javascript - 每小时重新加载页面 :00 minute and the :30 minute

标签 javascript

我需要每 30 分钟(整点和整点后 30 分钟)重新加载页面内容。我正在考虑使用 JavaScript,并且尝试了下面的代码,但它进入了无限循环。我不知道如何更改它以避免循环。

meta 标记不会有帮助,因为它们无法在某一分钟执行。

function refreshContent() {
    var tDate = new Date();
    thisHour = tDate.getHours();
    thisMinute = tDate.getMinutes();
    thisSecond = tDate.getSeconds();
    setTimeout("refreshContent()",60000); // in milliseconds = 1 minute

    if ( thisMinute == 0 || thisMinute == 30 ) {
        location.reload();
    }

}
refreshContent();

最佳答案

您只需要设置一个计时器并计算下一次刷新的时间。这样,当页面恰好在 :00 或 :30 加载时,您可以防止页面重复重新加载自身。

var minute = new Date().getMinutes(),
    nextRefresh = (30 - (minute % 30)) * 60 * 1000;

setTimeout( function() { location.reload(); }, nextRefresh );

30 - (分钟 % 30) 计算距离下一个半小时还有多少分钟,* 60 * 1000 将其转换为毫秒。触发重新加载后,计时器设置为 30 分钟。

关于javascript - 每小时重新加载页面 :00 minute and the :30 minute,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38128078/

相关文章:

Javascript 调试 - 脚本适用于硬编码变量,不适用于 getElementById ('id' ).value

javascript - React 中两个组件的渲染之间的转换 [React-Spring]

javascript - 如何将关键帧的 0% css 设置为元素的当前 css 值?

javascript - 需要没有填充的clientHeight

javascript - 如何验证表单中每组至少选中了 1 个复选框?

javascript - 如何获取相应按钮的值属性?

javascript - 来自 JavaScript 函数的 Ajax 异步和循环 PHP 请求

javascript - 使用 Scrapy 抓取无限滚动的网站

javascript - 为什么我的 HTML 按钮会刷新页面?/为什么我无法将新的 HTML DOM 元素插入到我的页面中

javascript - 使用 JavaScript 正则表达式为 Angular 5 应用程序验证英国邮政编码