jquery暂停多个元素?

时间:2012-11-16 00:35:36

标签: jquery animation queue controls

fxqueues似乎不适用于较新版本的jquery。

我正在制作许多元素的动画,需要暂停/播放它们。简单地串联回调将不会给我我需要的控制(至少可读),因为停止动画需要引用动画元素并且有许多元素。

我试图将动画排队到父div,但这似乎不起作用。像:

<div id='parent'>
    <div class='c1'></div>
    <div class='c2'></div>
    <div class='c3'></div>
    <div class='c4'></div>
</div>

$('#parent')
    .queue(function(){$('.c1').animate({...})});
    .queue(function(){$('.c2').animate({...})});
    .queue(function(){$('.c3').animate({...})});
    .queue(function(){$('.c3').animate({...})});

$('#parent').pause();
$('#parent').clearQueueu();

我即将玩:stackoverflow answer for something related

这是一个如此罕见的需求,jquery团队有理由忽视requests like this 1 of the many examples中的这个功能吗? 要么 与.promise(),. done(),. defferend(),Callbacks.add()等有其他策略。我应该学习什么?

再次使用每个动画的回调很麻烦,许多动画和暂停/播放功能与所有这些回调意味着我的暂停功能必须为每个运动中的每个元素都有线条。

$('.c1').pause();
$('.c2').pause();
$('.c3').pause();
$('.c4').pause();

1 个答案:

答案 0 :(得分:1)

:animated选择器会帮助你吗?您应该能够选择所有动画元素并停止它们。