我想用jquery每秒钟重新加载一次url,我尝试下面的代码,这段代码只能重新加载一次url。我该怎么做?用jquery每秒钟刷新一次url
<a href="http://myweb.com/" id="thisLink"></a>
setInterval(window.location = $('#thisLink').attr('href'), 1000);
DEMO:http://jsfiddle.net/QBMLm/
我想用jquery每秒钟重新加载一次url,我尝试下面的代码,这段代码只能重新加载一次url。我该怎么做?用jquery每秒钟刷新一次url
<a href="http://myweb.com/" id="thisLink"></a>
setInterval(window.location = $('#thisLink').attr('href'), 1000);
DEMO:http://jsfiddle.net/QBMLm/
一旦你重新加载URL(window.location
更改)setInterval
变得没有实际意义的上下文(和范围)(页面被丢弃,接下来就是加载)。然后脚本重新加载并重新分配setInterval
。
哦,从语法上看,代码无效。您可能想要将window.location
部分包裹在function(){}
中,例如
setInterval(function(){
window.location = $('#thisLink').attr('href')
}, 1000);
否则它实际上并没有以区间方式执行,而是立即执行。
在每一秒钟=>这不起作用:jsfiddle.net/QBMLm/5/ –
@jenniferJolie:这就是我在我aswer的前半部分解释。你不能在同一个语句中使用'setInterval'和'window.location'(但是在保留代码时确实显示了它应该看起来如何)。 –
它只能重新加载一次,因为一旦你改变了window.location
你离开了你的页面。
您需要打开新命名窗口中的链接或将子页面嵌入到iframe中。
setInterval(function() {
window.open($('#thisLink').attr('href'), 'mywindow', '');
});
看,这些可能帮助您:
<meta http-equiv="refresh" content="1;url=/">
当然
:
JS setInterval executes only once setInterval with jQuery.html only updates once? http://www.google.com/search?q=jquery+setinterval+only+running+once&aq=0&oq=jquery+setinterval+only+running+once&sugexp=chrome,mod=1&sourceid=chrome&ie=UTF-8
如果这是你的页面,你可以在头使用,这只适用于它嵌入的页面,并且不会继续重新加载其他页面外部网站?
setInterval
在浏览器重新加载之间不持续。另外,它以一个函数作为第一个参数。你可以尝试这样的:
setTimeout(function() {
window.location = $('#thisLink').attr('href');
}, 1000);
它将等待1秒前重定向。如果您正在重定向的页面具有相同的代码,则它也会执行相同的操作。
这真的很烦人,但实际上有一个元素刷新标签,它根本就没有任何javascript。 – adeneo