为了账号安全,请及时绑定邮箱和手机立即绑定

如何在特定时间自动重新加载网页?

如何在特定时间自动重新加载网页?

暮色呼如 2019-12-02 13:56:36
我有一个网站,希望在某个时间(例如3:35 pm)重新加载,而不是在5分钟的特定间隔后重新加载。我怎么做?
查看完整描述

3 回答

?
莫回无

TA贡献1865条经验 获得超7个赞

以下JavaScript代码段可让您在给定的时间刷新:


function refreshAt(hours, minutes, seconds) {

    var now = new Date();

    var then = new Date();


    if(now.getHours() > hours ||

       (now.getHours() == hours && now.getMinutes() > minutes) ||

        now.getHours() == hours && now.getMinutes() == minutes && now.getSeconds() >= seconds) {

        then.setDate(now.getDate() + 1);

    }

    then.setHours(hours);

    then.setMinutes(minutes);

    then.setSeconds(seconds);


    var timeout = (then.getTime() - now.getTime());

    setTimeout(function() { window.location.reload(true); }, timeout);

}

然后,您可以添加脚本标签来调用该refreshAt()函数。


refreshAt(15,35,0); //Will refresh the page at 3:35pm


查看完整回答
反对 回复 2019-12-02
?
料青山看我应如是

TA贡献1772条经验 获得超8个赞

<META HTTP-EQUIV="Refresh" CONTENT="5">

这将迫使页面每5秒重新加载一次。只需计算正确的时间间隔并将其添加到内容标签即可


查看完整回答
反对 回复 2019-12-02
?
侃侃无极

TA贡献2051条经验 获得超10个赞

我发现此页面有类似的问题,并用它找出了可能对某些人有用的更具体的答案。对于此项目,我们希望确保一旦发生全球关注的现场活动时页面就会刷新,从而激活嵌入在用户页面上的播放器(我知道狭窄的用例-其他人可能会更好地用于它)。


上述答案中的一个挑战是如何处理时区转换,这对我们来说是一个更大的问题,因为我们要确保页面在特定的日期和时间刷新。为此,我获取了目标日期和今天的日期的UTC版本,将其转换为GMT,然后将Andrew的超时功能设置为两者之间的差值。



var target = new Date("January 28, 2011 13:25:00");

timeOffset = target.getTimezoneOffset() * 60000;

targetTime = target.getTime();

targetUTC = targetTime + timeOffset;


var today = new Date();

todayTime = today.getTime();

todayUTC = todayTime + timeOffset;


refreshTime = (targetUTC - todayUTC);

if (refreshTime > 1) {

    setTimeout(function() { window.location.reload(true); }, refreshTime);

}


查看完整回答
反对 回复 2019-12-02
  • 3 回答
  • 0 关注
  • 890 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信