我正在使用以下代码作为自动完成脚本的一部分,以避免每次击键都对服务器造成影响:
var that = this;
textInput.bind("keyup", function() {
clearTimeout(that.timer);
that.timer = setTimeout (that.doStuff(), 2000);
});
不幸的是,这并没有清除旧计时器。他们仍然全部执行。
有人知道我错过了什么吗?
谢谢!
最佳答案
你可能想使用:
that.timer = setTimeout (that.doStuff, 2000);
代替:
that.timer = setTimeout (that.doStuff(), 2000);
否则,将立即调用 doStuff。
关于javascript - clearTimeout 在 javascript 自动完成脚本中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2618865/