怎么理解里面说的防止定时器累积?哪位解释下
10 回答
当我们定义了一个定时器以后,我们可以通过事件来触发这个定时器开始工作,例如:点击按钮,让一个div的宽度从1px加宽到1000px,根据我们的设定步长(比如,10px/毫秒),就会产生一个动画效果。试想一下,在这个加宽的动画还没有结束时,我们再次点击了按钮,此时,又会有一个新的定时器开始工作,此时,有两个定时器,同时作用在这个div的动画上,整个的动画速度就会加倍,你点击按钮的次数越多,累加的定时器越多,动画速度也会越快,这当然不是我们想要的结果。 解决办法就是,我们在定义定时器的时候,定义一个定时器变量,每次点击按钮的时候,利用clearInterval先把所有的定时器清除掉,再开始新定时器,这样就能保证定时器的正常工作。
举报
0/150
提交
取消