gpt4 book ai didi

Javascript - Jquery .load() 和 setInterval() 问题

转载 作者:行者123 更新时间:2023-11-29 22:41:24 26 4
gpt4 key购买 nike

假设我这样做:

$("#content").load(...);

在我加载的内容中包含一些 javascript:

var myCounter = 0;
var myInterval = setInterval(function(){
myCounter++;

$("#counter-display").html("Count: "+myCounter);
});

由于未知原因,如果我使用 $("#content").load(...) 重新加载内容; - myInterval 现在被调用了两次。

我试过做类似的事情:

if (myInterval !== undefined){
//dont set interval again
}

但是,它不起作用。有谁知道任何方法可以在 .load 上清除 myInterval,而无需将 javascript 放在加载文件之外?

最佳答案

尝试在计数器元素的数据对象中保留间隔和计数,如下所示:

var disp = $("#counter-display");
if(!disp.data("interval")) {
disp.data("interval", setInterval(function() {
var count = (disp.data("count") || 0) + 1;
disp.data("count", count).html("Count: " + count);
}, 500));
}

一次多一点代码,但全局变量等更清晰。

关于Javascript - Jquery .load() 和 setInterval() 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2496988/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com