.queue() JQuery メソッドの使用方法を学ぼうとしています。そこで、setTimeout のみを使用した基本的なアニメーションから始めました。ここにコードがあります:
キューを使用してこの同じアニメーションを実現する方法を考えています。この理由は、将来のすべてのステップを完全にキャンセルする「キャンセル」ボタンをページに追加できるようにしたいからです。今すぐスタートボタンを数回素早く押すとsetTimeoutが重なって変な感じになる。
次のように、各アニメーションを個別にリストしてみました。
$('#target').queue(function(){
$(this).delay(1000).fadeIn(1000);
$(this).dequeue();
});
しかし、フェードインとフェードアウトのみが適切なタイミングで発生し、色とテキストの変更は発生しませんでした。そのため、色とテキストの変更のためにキュー関数内に setTimeout を追加しました。これにより、タイミングが機能しました。しかし、私が電話したとき
$('#target').clearQueue();
色とテキストの変更がまだ発生している間、フェードインとフェードアウトを停止しただけです。
私の質問を要約すると:
クリックすると将来のすべてのステップを完全にクリアするキャンセル ボタンを使用しながら、リンクでアニメーションを実現するにはどうすればよいですか?
1 に対する答えが queue() を使用することである場合、これを正しく行うにはどうすればよいでしょうか (上記の試行の失敗に照らして)。
ありがとう!