jQueryの$(document).ready()
メソッドは、DOMが完全にロードされた後にコードを実行するために使用されます。すべてのDOM要素が利用可能な場合、指定された関数を実行するため、要素にアクセスまたは操作しようとすることが保証されます。
jQuery 3.0の前に、匿名関数を使用する典型的な使用法は次のとおりです。
$(document).ready(function() { // .ready() 的处理程序被调用。 });
document.ready
を除く)が非推奨です。 $(handler);
DOMContentLoaded
メソッドの純粋なJavaScriptの代替品です。 IEの古いバージョンの場合、jQuery ready
イベントを使用できます。 onreadystatechange
</body>
JQuery 3.0ready()
バージョン3.0をリリースする前に、いくつかの方法で
ready
ドキュメント要素について:
$(document).ready(handler);
$().ready(handler);
$(handler);
でそれを呼び出すことは、ドキュメント要素でそれを呼び出すことと変わりません。また、コールバック関数のトリガー時間は、指定された要素の負荷とは何の関係もありません。代わりに、DOM全体が完全にロードされた後に呼び出されます。 を除く他のすべての構文法は非推奨です。公式の理由は次のとおりです
$("img")
これは、選択が非効率であり、メソッドの動作に関する誤った仮定につながる可能性がある
$(handler);
イベントと
イベントが発射されます。DOMが完全にロードされ、要素が安全にアクセス可能である場合、
イベントが起動されます。一方、DOMとすべてのリソースがロードされた後、.ready()
ready
load
イベントは次のように使用できます
これは、DOMが相互作用の準備が整うだけでなく、画像が完全にロードされるのを待つだけでなく(画像サイズに応じて時間がかかる場合があります)。 ready
load
通常のDOM操作の場合、
ready
メソッドは、すべてのDOM要素が安全で実行可能な場合にのみコードが実行されることを保証します。しかし、これはどういう意味ですか? HTMLドキュメントの<body>
部分でJavaScriptコードを実行すると、ブラウザが後続のすべての要素をロードした後にコードが実行されることが保証されます(たとえば、 <code><p>
要素):<<
$(document).ready(function() { // .ready() 的处理程序被调用。 });
javaScriptコードを最後のものとして<body>
として実行する場合、操作またはアクセスを試みることができるすべての要素がロードされているため、おそらくready()
でラップする必要はありません。
$(window).on("load", function(){ // 所有资源(包括图像)加载完毕时的处理程序 });
ready()
イベントを聴くことができます:DOMContentLoaded
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>.ready() 教程</title> <🎜> </head> <body> <🎜> <p>我是这个网站的内容</p> </body> </html>
readyState
このソリューションを既に実装しているdomreadyライブラリを含めることもできます。
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>.ready() 教程</title> </head> <body> <p>我是这个网站的内容</p> <🎜> <🎜> </body> </html>
IEバージョンの場合は8以下の場合、
を検出できます。
onreadystatechange
readyState
または、jQueryのような
document.addEventListener("DOMContentLoaded", function(){ // DOM 完全加载时的处理程序 });
load
結論readyState
イベントまたはイベントを使用する必要がある場合があります。 ready
DOMContentLoaded
プロジェクトでjQueryを使用している場合、jqueryのonreadystatechange
関数を安全に使用し続けることができますが、前述の要素に(たとえばload
)に(非推奨)メソッドを使用しないことを忘れないでください。
最後に、多くの場合、これらのソリューションのいずれも必要ないかもしれないことを忘れないでください。JavaScriptコードを最終タグに移動し、DOMがロードされていることを確認できます。 document.ready
ready()
jquery$(document).ready()
から純粋なjavascriptへの移行に関するfaq
jQueryの
以上がjQueryドキュメント対応機能をJavaScriptに置き換えますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。