0

我是法国人,抱歉我的拼写错误...

我有一个包含fancybox 的页面,我想在所有分钟内重新加载此页面,除非打开fancybox。该页面必须在fancybox关闭时再次充电。

我使用这段代码,当打开一个fancybox时,重新加载不会停止,fancybox的内容总是会重新充电。

var timeout
$(document).ready(function(){
   timeout = setTimeout('window.location.reload(true);',2000);
   $('.fancybox').fancybox({
      'beforeLoad': function() {if(timeout){clearTimeout(timeout); timeout = null; }},
      'beforeClose': function() {window.location.reload(true);}
   });          
});

有任何想法吗?

4

2 回答 2

0

这应该有效。

$("<your selector>").fancybox({
    afterClose: function() {
       var timeout = setTimeout('window.location.reload(true);',2000);
    },
    beforeShow:function(){
       if(timeout){ clearTimeout(timeout); timeout = null; }
    }
})

注:花式盒子的版本是jquery.fancybox.js?v=2.1.2

请检查jsfiddle 链接

于 2012-10-19T13:01:57.417 回答
0

以这种方式使用beforeLoadafterClose为我工作:

function reloadPage(){
 location.reload();
}
$(document).ready(function(){
 var timeOut = setInterval("reloadPage()", 5000);
 $(".fancybox").fancybox({
  beforeLoad: function(){
   clearInterval(timeOut);
  },
  afterClose: function(){
   location.reload();
  }
 });
}); // ready

请参阅此处的工作演示

致敬

于 2012-10-19T19:37:46.040 回答