2011-08-10 7 views
65

Necesito capturar una tecla Enter presionar en cualquier momento en cualquier lugar en una página de inicio de sesión. Iniciará un intento de inicio de sesión.Capturar una tecla Intro presionada en cualquier lugar de la página

Usando jQuery, ¿cómo lograría esto? ¿Y lo vincularía a la etiqueta del cuerpo?

+0

Por favor, véase [ "preguntas debe incluir‘etiquetas’en sus títulos?"] (Http://meta.stackexchange.com/questions/19190/should-questions-include-tags-in-their-titles), donde el consenso es "¡no, no deberían"! –

Respuesta

123
$(document).keypress(function(e) { 
    if(e.which == 13) { 
    // enter pressed 
    } 
}); 
+4

Estaba intentando esto, lo que noté es que la pulsación de tecla no se activa para las teclas de flecha, ¡pero sí lo es la combinación de teclas! – akotian

15

El evento de tecla se dispara cuando se presiona una tecla.
El evento de pulsación de tecla se activa cuando se pulsa una tecla y esa tecla normalmente produce un valor de carácter.

$(document).keydown(function(event) { 
    if (event.which === 13) { 
    // login code here 
    } 
}); 
+0

o simplemente 'document.onkeydown' sin jquery ... – matanster

+0

Esto funciona mejor que' keypress'. Por ejemplo, podría obtener 'keypress' para detectar cuando se presionó la tecla ESC. Pero 'keydown' funciona perfectamente. ¡Gracias! –

Cuestiones relacionadas