med*_*dzi 0 javascript jquery setinterval clearinterval
假设我有几个按钮,当它们被点击时它们会触发某个setInterval,但是当我点击不同的按钮时,前一个setInterval没有清除或它说它是未定义的.
例:
$("#button1").click(function () {
var url = "xxx";
var min = "yyy";
getGraphCredentials3(min,url);
var onehour = setInterval(function () {
getGraphCredentials3(min,url);
}, 5000);
clearInterval(twohour);
});
$("#button2").click(function () {
var url = "zzz";
var min = "uuu";
getGraphCredentials3(min,url);
var twohour = setInterval(function () {
getGraphCredentials3(min,url);
}, 5000);
clearInterval(onehour);
});
Run Code Online (Sandbox Code Playgroud)
有人可以帮忙吗?
非常感激
onehour和twohour函数的范围是它们被声明的函数,因此它们在其他回调中是不可见的.
您必须在常见范围内声明变量.做这个 :
var onehour, twohour;
$("#button1").click(function () {
var url = "xxx";
var min = "yyy";
getGraphCredentials3(min,url);
onehour = setInterval(function () {
getGraphCredentials3(min,url);
}, 5000);
clearInterval(twohour);
});
$("#button2").click(function () {
var url = "zzz";
var min = "uuu";
getGraphCredentials3(min,url);
twohour = setInterval(function () {
getGraphCredentials3(min,url);
}, 5000);
clearInterval(onehour);
});
Run Code Online (Sandbox Code Playgroud)