我尝试建立一个网站,在几秒钟后更新或加载其中的一部分。在我加载网站并在几秒钟到几分钟后(取决于我在代码中输入的时间)持续加载网站的一部分后,它将返回:
噢,快点!
显示此网页时出了点问题。
这是我在不断加载页面时使用的脚本:
setInterval(function(){
refresh() // this will run after every 36 seconds
}, 36000);
function refresh() {
$('#myChart').load(location.href + "#myChart>*","");
}
老实说,我不知道function refresh()
中的代码是如何工作的。
如果您能帮助我理解这两件事,那将是很有帮助的。
答案 0 :(得分:-1)
由于.load()
的网址与您所在的页面相同,因此导致堆栈溢出。因此,它将同一页面加载到“ myChart”元素中,然后启动另一个setInterval
。因此,现在您有2个setInterval
正在运行,然后再次加载时,您有4个正在运行,然后有8个,依此类推。
我不确定将当前正在访问的页面加载到当前正在访问的页面的目的。也许您是要加载其他网址?如果这样做,那么就不会有堆栈溢出。
https://repl.it/@AnonymousSB/SO53360989
setInterval(function(){
refresh() // this will run after every 36 seconds
}, 36000);
function refresh() {
$('#myChart').load(location.href + "/path/to/another/page.htm");
}
如果您只是想自动重新加载正在浏览的页面,请尝试此操作。
function refresh() {
window.location.reload(true);
}
setTimeout(refresh, 36000);