2013-06-19 130 views
1

我正在使用jquery $("selector").load("url")方法從服務器加載大標記。但在我的情況下,我有很多大的圖像內的響應HTML。這些圖像渲染速度非常慢。所以我想要加載一個加載指示符,直到所有圖像完全呈現。然後在所有圖像完全呈現後移除該指標。我怎樣才能實現這個使用jquery load方法。通過jQuery的圖像加載事件處理程序ajax

在此先感謝。

回答

1

一種方法是加載indicater在document.ready並把它藏在負載回調函數

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

這僅僅是一個例子,讓你開始...負荷的回調函數加載完成時被調用。 ..然而,你可以顯示無論你需要的指標..只是當加載完成時隱藏它。

+0

我不想就準備打電話。我想通過點擊某個按鈕來調用它。並且回調將在響應到來時被調用,而不是所有(圖像)都完全呈現。 – Darshan

0

您可以使用附有像任何DOM元素.load事件:

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

現在你可以將你的行動在加載事件處理函數:

$('.images img').load(function(){ 
    $('.images').show(); 
    //--Your code goes here //-- 
}); 
+0

一旦迴應來了,回調就會被調用,而不是所有的東西(圖片)都完全呈現 – Darshan