私が持っている場合
$("a#foo").click();
$("a#bar").click();
dostuff();
両方とも、異なることを行うクリック ハンドラーがアタッチされています。バーのクリック ハンドラーは、foo の完了後にのみ実行されることが保証されていますか? またはそれらは非同期にディスパッチされます
同様に.. dostuff() は foo と bar のクリックハンドラが完了した後にのみ実行されますか?
私が持っている場合
$("a#foo").click();
$("a#bar").click();
dostuff();
両方とも、異なることを行うクリック ハンドラーがアタッチされています。バーのクリック ハンドラーは、foo の完了後にのみ実行されることが保証されていますか? またはそれらは非同期にディスパッチされます
同様に.. dostuff() は foo と bar のクリックハンドラが完了した後にのみ実行されますか?
ブラウザのJavascript実行モデルは(概して)シングルスレッドであるため、HttpXmlRequestなどの外部で非同期ディスパッチが実行されることはありません。
したがって、foo click()関数は、bar click()が呼び出される前に戻り、doStuff()が呼び出される前に戻ります。
fooの動作によって異なりますが(技術的には、メソッドの完了後に起動できるsetTimeoutを使用してイベントを起動するようにfooを設定できます)、はい、fooの完了後に起動する必要があります。