如何设置与keyPress,keyup,keydown等相反的东西。如果用户开始键入内容然后停止,2秒后执行function(){}
我试着onKeyPress有延迟,但似乎没有用。
由于
答案 0 :(得分:2)
您可以使用keyPress和全局计时器。只需在每次用户按键时重置计时器。 我想代码就像:
var myTimer = undefined;
var delayTime = 2000; // should be in miliseconds.
function myfunction() {
// do your stuff here
}
function onKeyPress(e) {
if (myTimer) {
clearTimeout(myTimer);
}
myTimer = setTimeout('myfunction();', delayTime);
}
PS:我还没有测试过这段代码。
答案 1 :(得分:1)
在关键事件中,您设置2秒计时器。如果在计时器关闭之前有另一个键事件,则停止计时器并设置一个新计时器。如果计时器触发,则表示没有输入2秒钟。
答案 2 :(得分:0)
嗯,一种古老的学校方法是使用setTimeout
和clearTimeout
。基本上,每次按键发生时,您取消之前的超时,然后设置一个延迟2秒的新超时。一旦有人停止按键2秒钟,函数调用才会真正通过,我认为这就是你所要求的
答案 3 :(得分:0)
我不知道是否有任何本地方式这样做。但是我已经使用这个plugin来执行此操作。