我目前正在设计一个包含主页的系统,该主页显示仅登录他们必须完成的工作的人。我被要求设置此主页以每3分钟刷新一次,这是我使用以下代码完成的:
function startTimer() {
var now = new Date();
var minutes = now.getMinutes();
var seconds = now.getSeconds();
var secTime = minutes*60*seconds;
if(secTime % (3*60) == 0){
var refreshTime = 3*60*1000;
} else {
var refreshTime = (secTime % (3*60)) * 1000;
}
setTimeout('refresh()', refreshTime);}
function refresh() {
window.location.href = 'myURL';
}
startTimer();
我目前遇到的问题是,当我离开该页面但仍在系统中时,它不断使我返回首页,而我却丢失了正在处理的内容。
对于没有离开网站的人,我是否有办法让他们保持刷新状态,并在有人离开时将其停止?
我对Java语言非常陌生,因此如果我提出很多问题,请耐心等待。
预先感谢您提供的任何帮助。
最佳答案
我假设您在网站的所有页面上都使用共享的javascript文件,这就是为什么计时器将继续在每个页面上运行的原因。您可以通过检查页面网址并将startTimer
函数包装在此检查中来确保计时器仅在首页上运行:
if (document.location.href == "http://www.yourhomepage.com"){
startTimer();
}
将http://www.yourhomepage.com替换为您主页上的任何URL。仅当您的页面是单独的html文件时,这才起作用。如果您使用的是不更改文档的hashbang方法,则此方法将无效。
关于javascript - 刷新首页,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27524180/