Por lo tanto, tengo problemas para ejecutar mi script si se presiona la tecla Tab. Después de buscar en Google rápidamente, el código de la ficha es 9. Además, mientras hablamos, ¿hay alguna forma mejor de verificar si se presiona una tecla sin usar códigos de caracteres? Lo estoy preguntando porque sigo recibiendo la siguiente advertencia de firebug cuando se utiliza el código:jQuery: ¿tecla para la tecla TAB?
No se debe utilizar la propiedad 'charCode' de un evento de teclado. El valor no tiene sentido
De todos modos, todavía funciona, así que ese no es el problema. Este es el código que utilizo:
$('/* my inputs */').keyup(function(e) {
console.log('keyup called');
var code = e.keyCode || e.which;
if (code == '9') {
console.log('Tab pressed');
}
});
Utilizando el código encima de la consola se deja en blanco, se añade nada (usando Firebug). Por supuesto, intenté hacer cosas en lugar de registrar el texto, pero no se ejecuta nada. Entonces, ¿alguien puede ver por qué esto no está funcionando? ¿Hay una mejor manera de verificar si se presiona una tecla?
Gracias de antemano.
Tenías razón, la entrada pierde el foco antes de que se ejecute la tecla. Cambié el keyup a keydown y funciona como debería ahora. ¡Gracias hombre! – qwerty
Hm, me encontré con otro problema ahora. Usando return falso; No puedo usar las entradas, lo cual lo hace inútil. Probé preventDefault, pero tampoco parece funcionar. ¿Hay alguna forma de eludir eso? – qwerty
Supongo que quieres agregar un carácter de 'pestaña' a la entrada, ¿verdad? Agregué un ejemplo de código a mi respuesta. –