簡體   English   中英

jQuery $ .post停止GIF動畫?

[英]jQuery $.post stop GIF animation?

我發送請求以獲取HTML內容並替換為其他內容。

這是我的jQuery代碼。

 $.post(page,function(data){
      $('.page_content').html(data);
 });

而且我也使用此代碼發送請求,但無法正常工作,我遇到了同樣的問題。

$.ajax({
    url:page,
    method:'POST',
    async:true,
    success: function(data){
        $('.page_content').html(data);
    }
});

我使用$ .ajaxStart和$ .ajaxStop進行隱藏和顯示GIF加載。

 $(document).ready(function(){
      $( document ).ajaxStart(function() {
             $( ".page_loading" ).show();
      });
      $( document ).ajaxStop(function() {
             $( ".page_loading" ).hide();
      });
 });

這段代碼在Mozila上可以正常使用,但是在chrome或safari上卻無法使用。

在chrome或safari中,GIF加載是停止動畫。

我使用此GIF進行加載。

http://4.bp.blogspot.com/-j9gMlFkdLvw/Tp1ZdBf0L5I/AAAAAAAAA6c/igXiNrSqqgA/s400/loading-gif.gif

請檢查這在Mozila中是否可用,但未對chrome和safari進行動畫處理是停止動畫。

謝謝。

我在任何地方都沒有找到文檔,但是我的經驗是,當webkit開始頁面轉換時,它會通過停止GIF動畫並防止某些頁面重繪來開始從當前頁面回收內存。 大概是為了減少渲染下一頁時的整體內存使用量。 我發現您可以使用較小的(文件大小)GIF來解決它。

首先,嘗試不要直接鏈接到blogspot中的該URL。 將圖片托管在同一台服務器上,這樣它可以快速加載,並且Blogspot網址以后可能會更改,甚至可能不會為其他人加載。

其次,我認為GIF停止了,因為准備好在文檔上立即運行ajax,為什么不使用SetTimeout()稍微延遲一下。

另外,您的HTML響應$('。page_content')。html( data ); )可能包含太多html ,因此它使瀏覽器很忙,並且無法暫時播放GIF或看起來像是“掛起”

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM