13

一つ質問があります; ASP.NET MVC Web アプリケーションでは、ページとすべてのコントロールが読み込まれると、特定の検証を行う必要があります。

Javascriptでは、メソッドを呼び出すために以下のコード行を使用していました:

window.load = JavascriptFunctionName ; 

私のチームの誰かが、上記のコード行を使用しないで、代わりに JQuery を使用して同じことを行うように私に求めました:

 document.attachEvent("onreadystatechange", function() {
        if (document.readyState === "complete") {
            CheckThis();

        }
    });

2つの違いを理解するのを手伝ってください。jQueryチェックの両方でアラートを維持してテストしたところ、最初に実行され、しばらく時間がかかってから実行CheckThisされる関数が呼び出されました。window.load提案してください

4

3 に答える 3

9

window.load- これは、画像を含むすべてのコンテンツが読み込まれたときに実行されます。

document.ready- これは、DOM の準備が整い、すべての要素がページ上にあり、実行する準備が整っているときに実行されますが、画像は必ずしも読み込まれません。

jQueryの方法は次のdocument.readyとおりです。

$(function() {
  CheckThis();
});

で引き続き発生させたい場合はwindow.load、次のようにします。

$(window).load(function() {
  CheckThis();
});
于 2010-03-16T19:25:37.957 に答える
4

window.loadページが完全に読み込まれたとき (画像、バナーなど) にdocument.readyStateトリガーされますが、DOM の準備ができたときにトリガーされます

于 2010-03-16T19:26:08.143 に答える
3

ready ハンドラーは、すべての外部リソースが読み込まれるのを待たずに、DOM が作成されるとすぐに実行されます。

jQuery を使用しているため、より簡潔で、ブラウザーに依存せず、広く使用されている構文は次のとおりです。

$(function(){  
   CheckThis();
}); 
于 2010-03-16T19:26:20.903 に答える