私はこれに明確な答えが見つからないことに驚いています。 。フェードアウトアニメーションを開始しますが、それは1秒の持続時間で実行が終了する前に、要素をDOMから削除され、jQueryはどのように非同期関数を持っていますか?
$(someElements).fadeOut(1000);
$(someElements).remove();
:だから、jQueryのでは、あなたがこれを行うことができますしかし、これはどのように可能ですか?私はJavaScriptがシングルスレッドであることを続けています(Is JavaScript guaranteed to be single-threaded?も参照してください)。私はどちらかを行うことができます知っている:
$(someElements).fadeOut(1000).promise().done(function() {
$(someElements).remove();
});
またはより良い:私は理解していない何
$(someElements).fadeOut(1000, function() {
$(this).remove();
});
は「シングルスレッド」にJavaScriptが実行される方法ですが、私はこれらのjQueryを使用することができますよ同時に異なる場所でDOMの変更を非同期的かつ視覚的に見る関数。どのように機能するのですか? この質問は「どうすればこの問題を解決できますか?」ではありません。
短い答え:CSSアニメーションまたはタイマー。 –
jQueryはアニメーションのキューを使用するため、ドキュメント内のどこかにあると思います。 – gpasci