www whatwg what spec language español 3wc javascript delay timedelay

whatwg - OnKeyUp JavaScript Time Delay?



whatwg español (4)

Hola, otra vez Masters Of The Web :) Ahora, tengo una nueva pregunta estúpida, y estoy pidiendo perdón. Leí en todas partes sobre esta solución, pero no encontré la que me funciona.

Tengo:

<input name="domain" type="text" id="domain" onKeyUp="javascript:chk_me();">

Lo único que pregunto es cómo hacer que esto no se compruebe después de presionar un botón, pero ¿después de decir 1000 milisegundos de inactividad del teclado?


¡Publicación realmente útil!

Otro enfoque sin globales, utilizando propiedades de función:

function chk_me(){ if(typeof timer !== undefined){ clearTimeout(this.timer); } this.timer=setTimeout(function validate(){validate(...)},1000); }


Otro enfoque, sin globales:

var typewatch = function(){ var timer = 0; return function(callback, ms){ clearTimeout (timer); timer = setTimeout(callback, ms); } }();

Uso:

Adjuntando el evento a través de JavaScript:

window.onload = function () { document.getElementById(''domain'').onkeyup = function() { typewatch(function(){alert(''Time elapsed!'');}, 1000 ); }; };

O usando un controlador de eventos en línea ( no recomendado tanto ) como lo tiene en su ejemplo:

<input type="text" name="domain" id="domain" onKeyUp="typewatch(function(){alert(''Time elapsed!'');}, 1000 );"/>

Prueba una demo here .


Prueba esto:

var timer; function chk_me(){ clearTimeout(timer); timer=setTimeout(function validate(){...},1000); }

De esta manera, cada vez que se presiona una tecla, el tiempo de espera se eliminará y se configurará nuevamente.


setTimeOut () sería el uno;)

<input name="domain" type="text" id="domain" onKeyUp="setTimeout(''chk_me()'',1000);">

Texto del enlace