3

目的の機能を実行するために.ready()とを組み合わせて使用​​しています。.load()

jQuery(document).ready(function($) {
    $("img").load(function() {
        // Function goes here
    });
});

ご覧のとおり、これは DOM の準備が整うのを待ってから、<img>読み込みのたびにコードを実行します。

ロードする画像が 1 つしかない場合、これは簡単です。

しかし問題は、10 個の画像を読み込む場合はどうすればよいかということです。各画像が1つずつ読み込まれるため、関数は10回呼び出されます。これは、私が望むものを達成するためだけにそれを行うにはあまり効率的な方法ではありません.

ここで質問です。すべての画像が読み込まれるのを待ってから、関数を 1 回実行するより効率的な方法はありますか?

4

3 に答える 3

1
jQuery(window).load(function() {
    alert("page finished loading now.");
});

jQuery(window).load(...)ページ上のすべてのコンテンツが読み込まれた後にトリガーされます。jQuery(document).load(...)これは、DOM がロードされた後にトリガーされるものとは異なります。これで問題が解決すると思います。

于 2013-08-13T19:32:18.357 に答える
0

知りたい人がいれば、私の最終結果は次のとおりです。

(function($) {
    $(window).load(function(){
        // Function goes here
    });
})(jQuery);

それはだから

jQuery(window).load(function($) {});

この質問で参照されているように、jQuery オブジェクトではありません。

(window).load で jQuery を呼び出し、「競合なし」コードの変数を渡す

于 2013-08-13T19:48:03.643 に答える