2012-03-13 88 views
0

我一直在試圖讓一個圖像加載器來顯示,這將ajaxStart期間覆蓋整個文件和隱藏在ajaxStop如下:圖像裝載機

腳本:

$(this).ajaxStart(function(){ 
     $().addClass('imageLoader'); 
    }); 

    $(this).ajaxStop(function(){ 
      $().removeClass('imageLoader'); 
    }); 

CSS:

.imageLoader { 
background: #f5f3e5 url('images/common/loading.gif') 50% no-repeat; top } 

它不顯示圖像爲目的,雖然我知道ajaxStart /停止正在當我與其他一些示例代碼進行了測試(即改變一些文字顏色爲紅色)。

有沒有更好的實現方法? 我似乎無法理解問題所在。

+0

是它的路徑,你的圖像文件?請嘗試/images/common/loading.gif,因爲除非圖像目錄與CSS文件位於相同的位置,否則您將無法工作。 – bsimic 2012-03-13 19:27:48

回答

0

,如果你設置了類,並顯示一個隱藏的div會更容易/隱藏

<div style="display:none" class="imageLoader" id="loader"></div> 

$(this).ajaxStart(function(){ 
     $('#loader).show(); 
    }); 

    $(this).ajaxStop(function(){ 
     $('#loader).hide(); 
    }); 
+0

另外,我怎樣才能讓用戶不能點擊背景中的任何東西。換句話說,他們只能看到圖像加載器,就是這樣,或者這也會解決這個問題 – Cancos 2012-03-13 17:54:50

+0

相同只是設計你的div來覆蓋所有可見的,它不會允許用戶點擊任何其他的東西。 – 2013-03-11 15:29:11