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"); 
}