19

$(document).readyすべてのページHTMLの下にjQueryスクリプトをロードしている場合でも、 jQueryを使用してページ内の要素を検索できるようになるまで待つ必要がありますか?

4

3 に答える 3

6

いいえ、ドキュメントは既に読み込まれているためです。Dom は上から下にロードされます。個人的には、すべての js をページの先頭ではなく、ページの下部に配置するのが好きです。

ただし、これはわずか 1 行のコードであり、安全のために使用することをお勧めします。さらに短くすることもできます。$(function() {}と同じです$(document).ready(function(){})

于 2012-05-01T02:30:35.190 に答える
5

$(document).readyいいえ、スクリプトがこれらの要素の下に配置されている場合、ページ上の DOM 要素と対話するコードは必要ありません。

</body>終了タグの前に置くことをお勧めします。

于 2012-05-01T02:27:59.047 に答える
1

jQuery の関数を使用する必要はありませreadyが、コードはこれを念頭に置いて作成する必要があります。いずれclickかまたは他のバインドベースのハンドラーがセレクターに正しくアタッチされない場合がありますが、他のハンドラーは意図したとおりに機能する可能性がありますlive$.ajax

このアプローチを使用してスクリプト ローダーまたは AMD を使用する場合は注意してください。jQueryが使用可能である必要があり、読み込み時にブロックする必要があります。jQuery とその他の deps を head にロードします。

jQueryが機能するためにこれを使用する必要がないことを説明しているこのテクニックをよく見てください(必ずしもフッターでの使用についてではありません):

http://encosia.com/dont-let-jquerys-document-ready-slow-you-down/

于 2012-05-01T02:27:30.290 に答える