1

$("selector").load("url")サーバーから大きなマークアップをロードするためにjquery メソッドを使用しています。しかし、私の場合、その応答 html 内に多くの大きな画像があります。そして、これらの画像のレンダリングは非常に遅くなります。したがって、すべての画像が完全にレンダリングされるまで、読み込みインジケーターを配置したいと思います。すべての画像が完全にレンダリングされたら、そのインジケーターを削除します。loadjqueryメソッドを使用してこれを達成するにはどうすればよいですか。

前もって感謝します。

4

2 に答える 2

1

1 つの方法は、インジケータをロードしdocument.readyて、ロード コールバック関数で非表示にすることです。

$(function(){
  //show you loader indicator
  $('#indicator').show();
  $("selector").load("url",function(){
     //indicator hide 
     $('#indicator').hide();
 })
});

これは、開始するための単なる例です...ロードが完了すると、ロードのコールバック関数が呼び出されます...ただし、必要な場所にインジケーターを表示できます..ロードが完了したら非表示にします。

于 2013-06-19T10:20:36.180 に答える
0

.load次のような任意の DOM 要素に関連付けられたイベントを使用できます。

<div class="images" style="display:none;">
  <img src="img.png"/>
  <img src="img2.png"/>
  <img src="img3.png"/>
</div>

これで、load イベント ハンドラー関数にアクションをアタッチできます。

$('.images img').load(function(){
   $('.images').show();
   //--Your code goes here //--
});
于 2013-06-19T10:24:35.973 に答える