如何多次停止JQuery location.reload加载?

时间:2017-08-20 17:15:02

标签: jquery

我正在运行一个倒计时钟。倒计时结束时。我想刷新一次页面。我正在使用location.reload但它继续加载和加载和加载。如何打破这个循环呢?

<script type="text/javascript">
  $('#clock').countdown('<?php echo $tickets_pageRecord['sales_start_date']; ?>')
  .on('update.countdown', function(event) {
    var format = '%H hr%!H %M min%!M %S  sec%!S';
    if(event.offset.totalDays > 0) {
      format = '%-d day%!d ' + format;
    }
    if(event.offset.weeks > 0) {
      format = '%-w week%!w ' + format;
    }
    $(this).html('Box Office opens in ');
    $(this).append(event.strftime(format));
  })
  .on('finish.countdown', function(event) {
    $(this).html('<h3>Click on shopping cart to buy tickets</h3>');
    location.reload();
  });
</script>

1 个答案:

答案 0 :(得分:1)

你需要传递一些状态,所以一旦你重新加载,你就不会再重复一遍。

你可以......

  1. 添加查询字符串参数以告知您的脚本不要运行
  2. 在其中一个存储选项(cookie,本地存储等)中添加一个标记,您可以检查该标记以决定是否运行该脚本
  3. 如果页面存在重大差异(因为我认为这是令人耳目一新的),您可以测试该差异
  4. 但是甚至比那更好 - 因为你在服务器上运行PHP,如果时间已经过去 - 只是不要添加JavaScript,因为你不再需要它了(看起来你在票房时刷新了是开放的。