2012-06-15 90 views
0

我曾嘗試使用下面的腳本由Ajax請求......我的網站停止,直到整個內容加載?

$.ajax({ 
type: 'POST', 
url: 'load.php', 
data: 'page='+url, 
dataType: "html", 
beforeSend:function(){ 

$('.left').html('<div class="ajax-load"><center><img src="http://www.cadysalley.com/img/loader.gif" style="margin-top: 33px;" alt="Loading..." /></center></div>'); 
$('#ajax-load').show(); 
}, 

success:function(msg){ 
$('.left').empty(); 
// successful request; do something with the data 
if(parseInt(msg)!=0) 
     { 

      $('html, body').animate({ scrollTop: 0 }, 0); 
      $('.left').html(msg); 
      $('#ajax-load').hide(); 
     } 
    }, 
    error:function(){ 

$('.left').empty(); 
$('#ajax-load').hide(); 
} 
}); 

我的問題是,每當我點擊警報彈出後的鏈接,微調開始,且警報彈出後,,日,除非新的頁面加載整個網站停頓了幾秒鐘,,, ...我希望我的網站不能暫停和繼續完美微調負載,直到整個網站負載與Ajax調用

回答

0

您正在設置新的內容您放置Ajax的負載DIV股利。

$('.left').html('<div class="ajax-load"><center><img src="http://www.cadysalley.com/img/loader.gif" style="margin-top: 33px;" alt="Loading..." /></center></div>'); 

$('.left').html(msg); 
$('#ajax-load').hide(); 

您需要將ajax-loader放在$('。left')容器的外側。

編輯

ok do this. 
setTimeout(function() { 
    $('.left').empty(); 
// successful request; do something with the data 
if(parseInt(msg)!=0) 
    { 

     $('html, body').animate({ scrollTop: 0 }, 0); 
     $('.left').html(msg); 
     $('#ajax-load').hide(); 
    } 
}, 100); 

這將這樣的伎倆。

+0

我這樣做也是,我把外還裝載圖像,, BT也是同樣的問題,加載圖像暫停,整個頁面會停止幾秒鐘,然後只 – mesushanta

+0

看到我的編輯答案 –

+0

你得到它的工作負荷?將我編輯的代碼放入成功函數中。這將做伎倆 –

0

嘗試這樣做..要完美地加載你的網站..在你的('.left')div之前添加一個div。隱藏('.left')直到數據被加載..然後顯示你的ajax loader..when完整的數據是通過AJAX做了你隱藏你的Ajax和你的(「左」)..

像this..Add CSS類

.hideIT{ 
visibility:hidden;  
} 

beforeSend:function(){ 

$('#newDiv').html('<div class="ajax-load"><center><img src="http://www.cadysalley.com/img/loader.gif" style="margin-top: 33px;" alt="Loading..." /></center></div>'); 
$('.left').addClass('hideIT'); 
$('#ajax-load').show(); 
}, 

success:function(msg){ 
$('.left').empty(); 
// successful request; do something with the data 
if(parseInt(msg)!=0) 
     { 

      $('html, body').animate({ scrollTop: 0 }, 0); 
      $('.left').html(msg); 
      $('#ajax-load').hide(); 
      $('.left').removeClass('hideIT'); 

     } 
    }, 
+0

問題不是abt隱藏和顯示,每當我點擊菜單鏈接,加載器圖像顯示,加載器圖像停止後,整個網站暫停,沒有什麼是點擊,所有likks被暫停,,整個網站暫停或停止幾秒鐘,直到在。左內容頁面加載 – mesushanta