$("#banner ul li").each(function(i){
$(this).animate({
width: arrW[index],
height: arrH[index],
opacity: arrO[index],
left: arrL[index],
top: arrT[index]
},500)
}
我不理解的是,当每循环一次的时候,动画的执行要500ms,那是等动画执行结束,也就是500毫秒之后,才进行下一次循环吗?还是不等动画执行完,就执行下一次循环了?
each主要只是遍历,没有异步调用的操作,而animate的动画主要还是用的延迟也就是异步。
http://www.zhangyunling.com/2...
这好比:
于是,动画的回调应该是进入任务队列的,所以循环是先执行的。
应该是先循环绑定事件,然后同时进行。
也就是说,在动画执行之前,先做了循环,给每一个元素都绑定了这个动画。循环结束之后,所有元素同时进行这个动画。