タイトルが示すように、Jqueryで関数の実行順序を維持/制御するにはどうすればよいですか?を介して多くのイベントハンドラーを確立できることは知っていますaddEventListener
が、それらの実行順序は保証されていません。引用させてください
ハンドラーは確立された順序で起動しますが、この順序は標準によって保証されていないことに注意してください。このコードのテスターは、確立の順序以外の順序を観察したことはありませんが、この順序に依存するコードを作成するのは愚かなことです。要素に設定された複数のハンドラーがランダムな順序で起動する可能性があることに常に注意してください。
Jqueryのマニングアクション第2版
また、jquery(AFAIK)をだまして、メソッドを使用して特定の順序でハンドラーを実行し、queue()
メソッドdequeue()
を呼び出して、キューの作成時に定義された順序で、そのキュー内のメソッドを呼び出すことができます。ただし、これは永続的な解決策ではありません。デキューは定義された順序でそれらを実行しますが、実行後にキューから削除します。したがって、これは1回限りの解決策であり、キューが完了すると、順序(最初にキューを作成したため)はなくなります。
だから、私は知りたいのですが、これに対する回避策や解決策はありますか?もしそうなら、それは私たちの要件に依存しますか?クリックイベントを処理したり、ajaxを使用してロードを介して非同期データをロードしたりしますか?