0

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();

私は遊んでいます:何か関連するスタックオーバーフローの答え

多くの例のうちのこの 1 のような要求のように、jquery チームがこの機能を無視することを正当化するのは、これが非常にまれな必要性ですか? または、.promise()、.done()、.defferend()、Callbacks.add()...などを使用した他の戦略があります。私は学ぶべきですか?

ここでも、アニメーションごとにコールバックを使用するのは面倒で、多くのアニメーションがあり、これらすべてのコールバックを使用して機能を一時停止/再生することは、一時停止関数が動作中の多くの要素のそれぞれに対して行を持たなければならないことを意味します。

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

1 に答える 1

1

:animatedセレクターは役に立ちますか? すべてのアニメーション要素を選択して停止できるはずです。

于 2012-11-16T00:52:13.753 に答える