web-dev-qa-db-ja.com

Jquery .ready()vs window.onload

Window.onloadよりもJquery ready()関数を使用する利点はありますか?

// Jquery ready
$(document).ready(function() {

});

// window.onload
window.onload = function () {

}
22
James

何をしたいかによって異なります。

  • jQuery readyは、HTMLの準備がすべて整ったときに、画像やその他のリソースが完了する前にコードを実行します。これは、JavaScriptを使用してDOMを変更できる最も早い時期であるため、広く使用されています。 (最新のブラウザでは、ネイティブイベント DOMContentLoaded )に置き換えられています。
  • window.onloadload イベント)は、everythingの読み込みが完了した後に実行されます。画像、Flash、およびいくつかのスクリプト。ただし、通常はスタイルシートではありません。これは、ページがそれ以上変更されない場合にのみ実行されるコードに使用します。

また、window.onloadを使用すると、1つのリスナーしか接続できませんが、jQueryの準備ができていれば、必要な数だけ接続できます。 window.onloadに複数のイベントを添付するには、addEventListenerを使用します。

window.addEventListener('load', function () {

}, false);
38
rvighne

はい。window.onloadを使用すると、リスナーを1つだけにすることができます。 jQuery readyは、必要な数のリスナーをアタッチします。

2
Elie

Windows.onloadは、画像を含むページにすべてがロードされるのを待ちます。 Document.readyは、htmlがロードされるとすぐに起動します。

2
Papa