我有一个页面,在这个页面上我有一个弹出窗口,当你转到那个页面或者你重新加载页面时出现。此外,我的网页每分钟重新加载一次。页面重新加载时要做些什么
我用这个代码:
if(window.location.href == "http://local.mysite.com:8080/")
{
setInterval("location.reload(true)", 60000);
};
我希望做的是当页面重新加载弹出不显示。
我有一个页面,在这个页面上我有一个弹出窗口,当你转到那个页面或者你重新加载页面时出现。此外,我的网页每分钟重新加载一次。页面重新加载时要做些什么
我用这个代码:
if(window.location.href == "http://local.mysite.com:8080/")
{
setInterval("location.reload(true)", 60000);
};
我希望做的是当页面重新加载弹出不显示。
添加参数中的URL来检测,如果页面第一次加载或重载,试试这个:
if (location.href.indexOf("http://local.mysite.com:8080/") === 0) {
var url = location.href;
if (url.indexOf('r=1') === -1) {
console.log('show popup');
url += url.indexOf('?') === -1 ? '?r=1' : '&r=1';
}
setTimeout(function() {
location.href = url;
}, 60000);
}
谢谢你的工作:) – Tonani
这里location.reload(true)
正在每分钟重新加载您的页面。这不应该发生。
相反,您应该在弹出窗口或其他元素上使用setInterval
。
首先,您不应该为此使用setInterval
,因为无论如何页面将被重新加载。一个简单的setTimeout
应该就足够了。
此外,不要使用字符串作为这些功能的第一个参数,因为它会导致JavaScript使用eval
,这可能会导致有关全局变量的恶作剧。尝试使用闭包:setTimeout(function() { location.reload(true); }, 60000);
。
现在解决页面重新加载时的弹出问题。您可以简单地向您的网址添加一个参数,如下所示:http://local.mysite.com:8080/?reloaded=true
,并从JavaScript中阅读。这需要你到location.reload
交换到像location.href = 'http://local.mysite.com:8080/?reloaded=true';.
你尝试过自己吗?想想你需要看看使用cookies或者其他什么东西,如果我的问题正确的话。 (什么弹出的方式?你的HTML代码在哪里?) – putvande
'也是我的网页每分钟重新加载,'..任何一分钟!你是认真的吗 ??如果我在页面中间试图阅读某些东西和爆炸,该怎么办?重新加载..再次重新加载!!!! .. :) – bipen
重新加载是否工作?你正在传递一个字符串js – raam86