1

我的页面中有一个自动刷新按钮。当我单击 Auto Refresh ON 时,页面应重新加载,而选择 Auto Refresh OFF 则不应重新加载。这可能吗?

这是我的自动刷新按钮功能:

$('#refresh').click(function(){
   if($('#refresh').attr('class') == 'refresh-off'){
      $('#refresh').addClass('refresh-on');
   }
    else{
      $('#refresh').removeClass('refresh-on');
   }
   });
});
4

3 回答 3

0

是的,应该可以这样做。由于您将自己控制刷新,也许您可​​以通过GET在 URL 中添加一个参数来指示自动刷新在起作用。这意味着当您重新加载网页时,您的脚本应该检查是否有一个GET参数被调用refresh并对其进行操作。

http://www.yourdomain.com/?refresh[=auto]
于 2013-01-12T15:59:29.813 回答
0

尝试设置一个计时器,然后检查#refresh 的类。如果设置,则刷新页面。

这个小提琴显示它以 10 秒的间隔工作。

var int=self.setInterval(function(){refreshPage()},10000);

$(document).ready(function() {

  var hashTag = window.location.href.split('#');
  if (hashTag[1] == 'reload') {
     $('#refresh').addClass('refresh-on').html('Refresh On');  
  }

  $('#refresh').on('click', function() { 
    $(this).toggleClass('refresh-on'); 
    if ($(this).hasClass('refresh-on'))
      $(this).html('Refresh On');
    else 
      $(this).html('Refresh Off');
  });

});

function refreshPage() {
  if ($('#refresh').hasClass('refresh-on')) {
    location.hash = 'reload';
    window.location.reload();
  } else
      location.hash = '';
}
于 2013-01-12T16:01:02.220 回答
0

设置定时器刷新:

var timerId;
$(document).ready(function() {
    timerId = setInterval("location.reload(true)", 300000);
});

比清除刷新命令

clearInterval(timerId);

完整代码:

var timerId;
$('#refresh').click(function(){
   if($('#refresh').attr('class') == 'refresh-off'){
      $('#refresh').addClass('refresh-on');
      timerId = setInterval("location.reload(true)", 300000);
   }
    else{
      $('#refresh').removeClass('refresh-on');
      clearInterval(timerId);
   }
   });
});
于 2013-01-12T16:02:03.260 回答