24

如何使用 javascript 每分钟刷新一次页面。注意:我没有控制/选项来编辑 HTML 正文标记(我们通常调用 onload 函数)。

4

6 回答 6

38

只需将此代码插入页面中的任何位置:

<script type="text/javascript">
  setTimeout(function(){
    location = ''
  },60000)
</script>
于 2012-08-20T13:03:15.547 回答
24
<script type="text/javascript">
    setTimeout(function () { 
      location.reload();
    }, 60 * 1000);
</script>

setTimeout将在指定的毫秒数后重新加载60 * 1000 = 1m页面,因此. 此外,由于页面正在刷新,超时将始终在页面加载时设置。

于 2012-08-20T13:03:15.267 回答
12

您不需要在 body 标记中包含代码。只需在下面添加此代码段,无论它位于页面的哪个位置,它都应该可以工作。

<script type="text/javascript">
    setInterval('window.location.reload()', 60000);
</script>

只要您可以在某些地方访问 HTML 并且您的编辑器不会过滤掉标签,您应该没问题。如果您的编辑器有一个单独的 JavaScript 代码区域,那么只需输入 setInterval 行。:)

于 2012-08-20T13:06:39.397 回答
3

事情是这样的,伙计! (第 4 点是针对这个特定问题的)

1)。如果您想一遍又一遍地重新加载相同的窗口,那么只需执行
window.location.reload()

2)。如果您想从服务器硬重新加载然后执行
window.location.reload(true)
(基本上,只需true作为布尔参数传递给同一行代码)

3)。如果您想在超时的情况下完成与第 1 点和第 2 点相同的工作。即在一段时间后执行重新加载,JUST ONCE,然后执行
setTimeout("window.location.reload()",10000);
(这应该在 10 秒后在窗口上执行。JUST ONCE)

4)。如果您想在一定的超时时间内继续重新加载窗口,请执行
setInterval("window.location.reload()",10000);

(这应该在 10 秒后在窗口上执行。间隔为 10 秒)


当然,有很多方法可以传递回调..
setInterval(function(){window.location.reload();},10000);
<code>
function call1(){
  location.reload(true);
}
setInterval(call1,10000);
</code>

注意:
-查看 [setTimeout][1] 和 [setInterval][2] 函数的 MDN 指南。
- 使用window对象是可选的,但很好用。(window 是一个全局对象,并且已经可用于您当前的窗口。)
于 2020-08-18T08:09:24.210 回答
0

如果您不想编辑页面,这就是诀窍。打开控制台并编写下面提到的代码段。

INTERVAL = 5    // seconds
STOP_AFTER = 15 // seconds

// Open the same link in the new tab
win1 = window.open(location.href);

// At every 5 seconds, reload the page
timer1 = setInterval(() => {
    win1.location.reload();
    console.log("Refreshed");
},INTERVAL*1000)

// Stop reloading after 15 seconds
setTimeout(() => clearInterval(timer1), STOP_AFTER*1000)
  1. 既然你想重新加载它,你不能简单地写 location.reload() 因为控制台将在重新加载后被清除。
  2. 因此,它将打开一个具有相同链接的新选项卡。使用第一个选项卡的控制台可以轻松控制第二个选项卡。
于 2021-11-30T08:45:23.420 回答
-1

当您的 URL 有参数时,似乎 usinglocation = ''在 IE8 中不起作用。页面在没有任何参数的情况下重新加载。

以下代码适用于我:

<script type="text/javascript">
  setTimeout(function(){
      window.location.href = window.location.href;
  },10000)
</script>
于 2015-01-12T15:22:38.767 回答