only - keydown jquery
Captura de "Eliminar" Keypress con jQuery (4)
event.key === "Eliminar"
Más reciente y mucho más limpio: use event.key
. ¡No más códigos de números arbitrarios!
document.addEventListener(''keydown'', function(event) {
const key = event.key; // const {key} = event; ES6+
if (key === "Delete") {
// Do things
}
});
Cuando utilizo el código de ejemplo de la documentación de jQuery para el controlador de eventos de pulsación de teclas, no puedo capturar la tecla Eliminar . El siguiente fragmento va a registrar 0
cuando se presiona la tecla Suprimir en Firefox:
$(document).keypress(function(e) {
console.log(e.which);
});
Parece que debe haber una forma de capturar la tecla Eliminar , pero es un término ambiguo por lo que Google no está siendo de mucha ayuda.
Códigos clave de Javascript
- e.keyCode == 8 para retroceso
- e.keyCode == 46 para retroceder hacia adelante o eliminar el botón en PC
Excepto este detalle, la respuesta de Colin & Tod está funcionando.
No debe usar el evento de keypress
, sino el evento de keyup
o keydown
porque el evento de keypress
está destinado a caracteres reales (imprimibles). keydown
se maneja en un nivel inferior, por lo que capturará todas las claves no imprimibles, como eliminar e ingresar .
$(''html'').keyup(function(e){
if(e.keyCode == 46) {
alert(''Delete key released'');
}
});
Fuente: códigos de clave de JavaScript javascript códigos de www.cambiaresearch.com