jQuery の
$(function() { ... })
DOM の準備ができたときに実行される関数を追加するには、それらの関数はすべて並列に実行されますか、それとも順番に実行されますか?
jQuery の
$(function() { ... })
DOM の準備ができたときに実行される関数を追加するには、それらの関数はすべて並列に実行されますか、それとも順番に実行されますか?
document.ready
この点で通常のイベントのように動作し、バインドされた順序で順番に発生します。関連する jQuery コア ソースは次の場所で確認できます。
これはあなたがするとき何が起こるかです$(function)
:
ready: function( fn ) {
jQuery.bindReady();
if ( jQuery.isReady ) {
fn.call( document, jQuery );
} else if ( readyList ) {
readyList.push( fn );
}
return this;
}
そして、これは後で「準備完了」イベントが発生したときに発生します。
if ( readyList ) {
var fn, i = 0;
while ( (fn = readyList[ i++ ]) ) {
fn.call( document, jQuery );
}
readyList = null;
}
ドキュメントの準備ができている場合、関数はすぐに実行さif
れます。これは、上記の最初のコード ブロックの部分です。
それらは順番に実行されます。Javascript コードは並行して実行されません。
それらは順番に実行されます。この動作を確認するには、firebug にブレークポイントを設定します。