CMS*_*CMS 46
另一种类似的方法,没有全局变量:
var typewatch = function(){
var timer = 0;
return function(callback, ms){
clearTimeout (timer);
timer = setTimeout(callback, ms);
}
}();
Run Code Online (Sandbox Code Playgroud)
...
<input type="text" onKeyUp="typewatch(function(){alert('Time elapsed!');}, 1000 );" />
Run Code Online (Sandbox Code Playgroud)
你可以在这里使用这个片段.
jim*_*imr 19
您可以使用keyDown(或keyUp)事件将函数设置为在1秒内运行,如果用户在该秒内键入另一个键,则可以清除超时并设置新的超时.
例如
var t;
function keyDown()
{
if ( t )
{
clearTimeout( t );
t = setTimeout( myCallback, 1000 );
}
else
{
t = setTimeout( myCallback, 1000 );
}
}
function myCallback()
{
alert("It's been 1 second since you typed something");
}
Run Code Online (Sandbox Code Playgroud)