ユーザーが中断しない場合、最後まで完了する必要がある一連のアニメーションがあります。アニメーションは遅延を使用して実装されます。例えば
$element1.delay(1000).animate({left: 1000}, 5000);
$element2.delay(2000).animate({left: 1000}, 5000);
$element3.delay(3000).animate({left: 1000}, 5000);
$element4.delay(4000).animate({left: 1000}, 5000);
私がこのようにしている理由は、各アニメーションが他のアニメーションのタイミングから完全に独立しているため、これが直感的に思えるからです。
アニメーションを 2500ms マークで中断したいとします。中断すると、要素はアニメーション状態の最後にジャンプする必要があります。ここで、.find(:animated) 選択で .stop(false, true) 関数を使用してみました。$element1 と $element2 は確かに中断され、終了状態にジャンプしますが、$element3 と $element4 はまだ .delay フェーズにあるため、影響を受けません。
私が望む効果を達成するための最良かつ最も簡単な方法は何ですか? ありがとう