持续加载网站后需要解决错误的方法

时间:2018-11-18 12:42:18

标签: javascript jquery html

我尝试建立一个网站,在几秒钟后更新或加载其中的一部分。在我加载网站并在几秒钟到几分钟后(取决于我在代码中输入的时间)持续加载网站的一部分后,它将返回:

  

噢,快点!
显示此网页时出了点问题。

这是我在不断加载页面时使用的脚本:

setInterval(function(){
            refresh() // this will run after every 36 seconds
        }, 36000);

        function refresh() {
            $('#myChart').load(location.href + "#myChart>*","");
        }

老实说,我不知道function refresh()中的代码是如何工作的。 如果您能帮助我理解这两件事,那将是很有帮助的。

1 个答案:

答案 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);