许多元素的jQuery动画队列

时间:2013-03-28 17:20:15

标签: javascript jquery animation

我有很多不同的元素(b,c,d,e,f classes),但每个元素都有相同的东西 - 'a class'。如何制作一些动画quene,以FIFO顺序(先进先出)一个接一个地制作动画?

Callback正在疯狂,因为有很多元素,我不知道什么时候会调用div。

3 个答案:

答案 0 :(得分:1)

鉴于你的动画都是同一类动画(动画左边是50)但是在多个元素上完成,你可以这样做:

nextAnim( $('.a') );

function nextAnim(elems) {
    elems.eq(0).animate({'left':50}, function() {
             nextAnim( elems.slice(1) );  // slice off the first element
    });
}

请参阅working fiddle

答案 1 :(得分:0)

Understanding jQuery Deferred.pipe()

如果你想要学习新东西并以优雅的方式做事,你可以尝试使用延迟对象。

答案 2 :(得分:0)

我用过

$('.a').filter(function(){ return $(this).is(':animated')}).length

知道是否有任何项目已经动画化,并且我只在没有动画时才会触发动画