bf缓存在chrome和safari中

时间:2014-03-22 11:32:54

标签: javascript jquery jquery-mobile

我的移动网站上的后退/前进按钮有问题。首先我要提一下,如果pageload需要超过半秒,我想显示一个带有该代码的loading-page-gif:

$(document).on('pageinit',function(e,data){


   setTimeout(function() {
      if (!$('#loading_image').hasClass('schnell')) {
      $('#loading_image').addClass('loading_image');
      $(window).load(function(){
        $('#loading_image').fadeOut(1500);
      });
  }
 }, 500);

});

$(window).load(function(){
   $('#loading_image').addClass('schnell');
});

这种方法很好但不是在一个特殊网站上使用谷歌地图(使用iframe)当用户通过后退按钮访问该页面并使用safari或谷歌浏览器时(在Firefox中台式电脑工作):然后页面加载GIF不会停止。 为了解决这个问题,我使用了以下代码:

$(document).on('pageinit', '[data-url="/anfahrt/"]', function (e) {
  $(window).on("pageshow", function(event) {
    if (event.originalEvent.persisted) {
    alert("From bf cache.");
    location.reload();
  }
 });
});

在我的iphone上,警报显示直到“从待机状态唤醒”。有人知道如何解决这个问题吗?谢谢!!

PS。:目前我使用以下代码,以便用户不会一直显示加载图像,但至少在iframe页面5秒后隐藏:

 $(document).on('pageinit', '[data-url="/anfahrt/"]', function (e) {

    setTimeout(function() {
     $('#loading_image').fadeOut(1500);
    }, 5000);


 });

在页面http://m.alstaetter-tc.de/bilder/verschiedene,一切正常,所以我认为它与iframe有关...

0 个答案:

没有答案