javascript - 如何从 8 :01 a. m 开始每 5 分钟刷新一次页面。然后是 8 :06 a. m。等等。

标签 javascript html

<html>
<head>Harshal</head>

<script>

var limit="5:0"
var doctitle = document.title
var parselimit=limit.split(":")
parselimit=parselimit[0]*60+parselimit[1]*1

function beginrefresh(){
  if (parselimit==1)
    window.location.reload()
  else{
    parselimit-=1
    curmin=Math.floor(parselimit/60)
    cursec=parselimit%60
  if (curmin!=0)
    curtime=curmin+" minutes and "+cursec+" seconds left until page refresh!"
  else
    curtime=cursec+" seconds left until page refresh!"
    document.title = doctitle + ' (' + curtime +')'
    setTimeout("beginrefresh()",1000)
  }
}

if (window.addEventListener)
  window.addEventListener("load", beginrefresh, false)
else if (window.attachEvent)
  window.attachEvent("load", beginrefresh)

</script>
</html>

这是我的演示代码。当有人单击链接并且选项卡标题倒数 5 个五时,我每 5 分钟刷新一次页面。但是,我无法弄清楚如何在上午 8:01 开始刷新,然后在上午 8:06 再次开始刷新,然后在上午 8:11 再次开始刷新,然后继续进行,而不取决于何时有人点击它。

有什么帮助吗?

最佳答案

要达到预期的结果,请使用 SetInterval

  1. 设置间隔为每分钟 (1000*60)
  2. 分别获取以小时和分钟为单位的时间
  3. 早上 8 点后或早上 8 点后的任何时间开始
  4. 每 5 分钟检查一次以刷新
  5. 刷新窗口

    setInterval(function(){
      var currTimeHr = new Date().getHours();
      var currTimeMin = new Date().getMinutes();
      if(currTimeHr >= 8){  //start at 8 or at any point after 8am
        if(currTimeMin%5 === 0){  // check every 5 mins
          window.location.reload(true); //refresh page
        }
      }
    }, 1000*60)

代码示例 - https://codepen.io/nagasai/pen/MXVWxb?editors=1010

关于javascript - 如何从 8 :01 a. m 开始每 5 分钟刷新一次页面。然后是 8 :06 a. m。等等。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50951448/

相关文章:

javascript - 此热键是否适用于 Mac 用户?

javascript - 日期在 IE 浏览器中显示无效,但适用于 chrome 和 Firefox

javascript - 最后一张图片幻灯片不起作用后

html - 如何让我的 Logo 按钮出现在标题元素的中间

html - 不使用 div 的固定表头表头

javascript - 如何刷新 HTML 包上的 Canvas?

c# - "Method group"- Javascript 中的语法?

javascript - 我如何从缩放的 div 中获取坐标?

html - 具有自动宽度的 css 动画按钮

javascript - 强制打开选择的 HTML 元素在 Firefox 中不起作用