1.
功能描述:
一个能实现多种动画效果的JS功能,,动画依赖vsetInterval(......) 定时方法来实现,将定时赋给一变量window.x,动画完成后,clearInterval(x);
每次触发动画,先clearInterval(x),防止连续触发同一个元素的动画所产生的叠加效果。
问题:
当快速连续触发多个动画时,未结束的动画会中止。
原因:
定时方法的引用赋给了 window.x ,当一个元素的动画没有完成时,迅速触发另一个元素的动画是,执行了clearInterval(x),
因为window.x是全局的,所以把第一个动画中止了。
解决:
元素动画的定时方法不要赋值给window,而是该元素的一个属性element.x。防止连续触发的叠加问题,就是在执行动画前先clearInterval(element.x);