Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 自动刷新特定页面_Javascript_Html - Fatal编程技术网

Javascript 自动刷新特定页面

Javascript 自动刷新特定页面,javascript,html,Javascript,Html,我该如何用Java或HTML实现每3小时45分钟刷新一次的自动刷新代码?不喜欢每个用户喜欢即使它的用户在页面上只有10分钟如果它是3小时45分钟,自上次刷新它将刷新无论如何,所以像3小时45分钟服务器时间不是用户时间,如果这有意义像12:45 am 3:45 am 6:45 am 9:45 am 12:45 pm 3:45 pm。。。秀安秀安希望这有道理谢谢你们的帮助 我尝试了以下方法,但它超出了用户时间 <meta http-equiv="refresh" content="13500"

我该如何用Java或HTML实现每3小时45分钟刷新一次的自动刷新代码?不喜欢每个用户喜欢即使它的用户在页面上只有10分钟如果它是3小时45分钟,自上次刷新它将刷新无论如何,所以像3小时45分钟服务器时间不是用户时间,如果这有意义像12:45 am 3:45 am 6:45 am 9:45 am 12:45 pm 3:45 pm。。。秀安秀安希望这有道理谢谢你们的帮助

我尝试了以下方法,但它超出了用户时间

<meta http-equiv="refresh" content="13500" >

您的代码将根据服务器时间刷新网页

要解决这个问题,您需要使用一个计时器,并使用javascript添加函数,在此基础上,您可以在访问页面时启动计时器,并在每个定期间隔后刷新

将此URl用于示例代码段:


希望这能有所帮助。

您可以用纯JavaScript完成这项工作

<script type="text/javascript">
setTimeout(function(){
    //You can change this value based on the server location.
    var offset = -5;
    var now = new Date();
    var utc = now.getTime() + (now.getTimezoneOffset() * 60000);
    var serverTime = new Date(utc + (3600000*offset));
    var hours = serverTime.getHours();
    var minutes = serverTime.getMinutes();
    if((hours % 3 == 0) && (minutes % 45 == 0)){
        location.reload();
    }
}, 30000);
</script>

setTimeout(函数(){
//您可以根据服务器位置更改此值。
var偏移量=-5;
var now=新日期();
var utc=now.getTime()+(now.getTimezoneOffset()*60000);
var serverTime=新日期(utc+(3600000*偏移量));
var hours=serverTime.getHours();
var minutes=serverTime.getMinutes();
如果((小时%3==0)和&(分钟%45==0)){
location.reload();
}
}, 30000);
您可以在页面中包含此脚本,它将每三小时重新加载一次。setTimeout设置为每30000ms或每30秒调用一次

编辑: 增加了用于处理多个服务器时区的偏移量值。 有关精确值,请参阅


感谢@ChrisForrence的建议。

我建议设置或活动。我使用与cpanel共享的主机。如果我能帮助你,我真的需要一个javascript,它会随着用户时间而不是服务器时间而变化,不是吗?比如,如果用户只在页面上停留了10分钟,它将不会刷新,直到他们在页面上停留3小时35分钟。我想3小时45分钟的要求有多灵活?如果是3小时刷新周期,您可以每分钟检查它是12:00 AM/PM、3:00 AM/PM、6:00 AM/PM还是9:00 AM/PM。或者,如果是4小时刷新周期,您只需每分钟检查12:00 AM/PM、4:00 AM/PM或8:00 AM/PM。请在投票前发表评论。这显然是对这个问题的一个合法答案。好吧,看起来询问者希望页面同时为所有用户刷新。此代码将在不同的时间为每个用户刷新。是的,我希望它同时为所有用户刷新time@RaghuramKasiap在测试后,这不起作用。。你的代码每3小时只对某些人有效,而这些人实际上在-5时区,其他人都不会得到刷新。我知道你不能使用聊天室。我上传了一个工作日志
<script type="text/javascript">
setTimeout(function(){
    //You can change this value based on the server location.
    var offset = -5;
    var now = new Date();
    var utc = now.getTime() + (now.getTimezoneOffset() * 60000);
    var serverTime = new Date(utc + (3600000*offset));
    var hours = serverTime.getHours();
    var minutes = serverTime.getMinutes();
    if((hours % 3 == 0) && (minutes % 45 == 0)){
        location.reload();
    }
}, 30000);
</script>