Quiero ejecutar una función como 2 segundos después de que un usuario haya terminado de escribir en el cuadro de texto. Si siguen escribiendo después de 1 segundo, el tiempo de retardo se restablece a 2.jQuery valor change event delay
Debería funcionar de forma similar a un cuadro de autocompletar.
Sé de 2 eventos: change
y keyup
. El problema que tengo con change
es que el cuadro de texto tiene que perder el foco para que se dispare. para keyup
, ¿qué pasa si usan el mouse para pegar un texto?
¿Me pueden ayudar aquí?
¿Debería event.type ser evt.type en su ejemplo? Se ve bien, creo que puedo tomar prestado esto. IE7 dispara múltiples cambios de propiedad, incluso onblur. ¿Eso los atrapa y solo lo maneja una vez? También es el propósito del temporizador? – armyofda12mnkeys
@ armyofda12mnkeys: no, 'event.type' es correcto, está buscando el objeto' event' global suministrado en IE. Podrías cambiarlo a 'window.event. *' Si quieres ser más cauteloso. Solo maneja los cambios a la propiedad 'valor', si se dispara más de una vez, cancela el temporizador establecido por el anterior. –