我已经为setTimeout函数定义了一个变量,以便我以后可以清除它。那部分有效。我在从变量调用setTimeout函数时遇到问题,我想我不懂语法。
var idOne = setTimeout(function() {
//do stuff here
custom(); //callback
}, 2000);
function custom() {
//do stuff here
idOne;
}
custom();
具体而言,我认为idOne;
部分必须是错误的。 JsHint说它没有做任何事情。我无法弄清楚语法。
修改
知道了!这是最终的代码!
var idOne;
var timeoutOne = function(){
idOne = setTimeout(function(){
//stuff
custom();
}, 2000);
}
function custom() {
//do stuff
timeoutOne();
}
然后当我想清除它时,我使用:
clearTimeout(idOne);
答案 0 :(得分:0)
setTimeout函数返回Number
,可用于clearTimeout
。我想,你想要做的是定义一个函数
var myFunction = function () {
idOne = setTimeout(function() {
custom();
}, 2000);
}
function custom() {
myFunction();
}
custom();
最后到clearTimeout
:
clearTimeout(idOne);