Javascript 如何阻止setInterval在.load()和#x27;s
当用户单击我网站上的导航按钮时,他们会调用Javascript 如何阻止setInterval在.load()和#x27;s,javascript,php,jquery,Javascript,Php,Jquery,当用户单击我网站上的导航按钮时,他们会调用.load(),即$(“#main_window”).load(“file.php”)如果file.php包含JavaScript以及setInterval计时器,那么如果用户多次单击导航按钮,他们将创建多个setIntervals。如何停止此操作,并且始终只有一个计时器 获取计时器ID没有帮助,因为.load重置全局变量。因此,我无法阻止重复.load()上的多个计时器 Console.log输出:带有两个.load(): 未定义 二十七 未定义 三十
.load()
,即$(“#main_window”).load(“file.php”)
如果file.php包含JavaScript以及setInterval
计时器,那么如果用户多次单击导航按钮,他们将创建多个setInterval
s。如何停止此操作,并且始终只有一个计时器
获取计时器ID没有帮助,因为.load
重置全局变量。因此,我无法阻止重复.load()
上的多个计时器
Console.log输出:带有两个.load()
:
未定义
二十七
未定义
三十四
不幸的是,这不起作用。不幸的是,这不起作用。我不想停止所有超时,因为我的站点上有其他用于其他目的的超时。我不想停止所有超时,因为我的站点上有其他用于其他目的的超时。
var myVar;
console.log(myVar); // will be undefined when .load() calls this file again.
myVar = setInterval(reload, 5000);
console.log(myVar); // A new ID will be created on each .load(), but all old instances will continue to fire
function reload() {
$(tableName).DataTable().ajax.reload(null, false);
console.log("reloaded");
}
if(myVar){
clearInterval(myVar)
}
var myVar;
console.log(myVar); // will be undefined when .load() calls this file again.
myVar = setInterval(reload, 5000);
console.log(myVar); // A new ID will be created on each .load(), but all old instances will continue to fire
function reload() {
$(tableName).DataTable().ajax.reload(null, false);
console.log("reloaded");
}