Posible duplicado:
qué código clave para la tecla de escape con jQuery
¿Cómo detectar la pulsación de la tecla de escape en IE, Firefox y Chrome? El siguiente código funciona en IE y alertas 27, pero en Firefox alerta0
$('body').keypress(function(e){
    alert(e.which);
    if(e.which == 27){
        // Close my modal window
    }
});
                    
                        javascript
                                jquery
                                keyevent
                                jquery-events
                                
                    
                    
                        Mithun Sreedharan
fuente
                
                fuente

keyupokeydownen combinación conkeyCodetrabajos en todos los navegadores.$(document).on("keyup", function (e) {var code = e.keyCode || e.which; alert('key pressed: ' + code);});Saludos desde el 2014Respuestas:
Nota:
keyCodeestá recibiendo un uso obsoleto en sukeylugar.Aquí está jsfiddle
keyCodese está despreciandoQué código clave para la tecla de escape con jQuery
fuente
$(document).on('keyup.unique_name', ...)y$(document).unbind('keyup.unique_name')===.El
keydownevento funcionará bien para Escape y tiene la ventaja de permitirle usarlokeyCodeen todos los navegadores. Además, debe adjuntar al oyente endocumentlugar del cuerpo.Actualización de mayo de 2016
keyCodeahora está en proceso de desaprobación y la mayoría de los navegadores modernos ofrecen lakeypropiedad ahora, aunque todavía necesitará un respaldo para un soporte decente del navegador por el momento (al momento de escribir las versiones actuales de Chrome y Safari no lo admiten).La actualización de septiembre de 2018
evt.keyahora es compatible con todos los navegadores modernos.fuente
<input>elemento y, por lo tanto, solo se activará cuando este elemento tenga el foco.if (evt.key === 'Escape') {lugar de usar el obsoletokeyCode.key, visita caniuse.com/#feat=keyboardevent-keyUsando JavaScript puedes verificar el funcionamiento de jsfiddle
Usando jQuery puedes verificar el funcionamiento de jsfiddle
fuente
verifique
keyCode&&which&keyup||keydownfuente
La mejor manera es hacer que esto funcione
FUNCIÓN:
EJEMPLO:
fuente
keypressno se dispara en la tecla de escape. Al menos, no en Chrome en una Mac.keydownarreglar el problema.A continuación se muestra el código que no solo deshabilita la tecla ESC, sino que también verifica la condición donde se presiona y, dependiendo de la situación, realizará la acción o no.
En este ejemplo,
desactivará la acción de presionar la tecla ESC.
Puede hacer algo como ocultar un div con esto:
Cuando se presiona la tecla ESC también se tiene en cuenta:
Puede eliminar esto si parte de la condición si desea aplicar esto a todos. O puede seleccionar INPUT aquí para aplicar solo esta acción cuando el cursor está en el cuadro de entrada.
fuente
Creo que la forma más sencilla es JavaScript vainilla:
fuente
Escapecomoevent.keyy no 27event.keyCode27.