我希望将setInterval()
的处理程序传递给内部函数。
例如:
var id = setInterval(myfunction, "100000");
我希望将id
传递给myfunction
我试过
setInterval(myfunciton(e), "10000");
但它没有传递变量。
有什么想法吗?
答案 0 :(得分:7)
当你调用setInterval
时,id不存在,但是在调用回调时它确实存在。
您需要将调用包装在使用调用中的id的函数中:
var id = setInterval(function(){
myfunction(id);
}, 10000);
答案 1 :(得分:1)
如果在变量中将变量包含在传入setInterval中,则回调会立即用该参数执行。
您需要做的是创建一个闭包:
setInterval(function() {
myFunction(e);
}, 10000);
此外,间隔应该是整数,而不是字符串。