所以我的页面上有一个区域,我想每10分钟更新一次。
现在,我正在使用此代码:
var refresh = setInterval(refreshArea, 600000);
但是这会在客户端更新,因此如果100个不同的用户正在查看该页面,则内容将在100个不同的时间更新。
我希望所有用户每10分钟更新一次内容,例如3:00,3:10,3:20等,这样如果用户在3:05来到该页面,内容将在5分钟后更新,然后每10分钟更新一次。
我正在使用ASP.NET MVC,所以我确定有一些服务器代码我需要这样做,但我不知道如何。
答案 0 :(得分:3)
您可以通过组合setTimeout
and setInterval
functions来实现这一目标。
var timeout = <%= (10 - DateTime.Now.Minute % 10) * 1000 %>;
setTimeout(function() {
refreshArea();
setInterval(refreshArea, 60 * 10 * 1000);
}, timeout);
请注意,超时值是在服务器上计算的。
答案 1 :(得分:0)