Sto cercando di implementare la funzionalità di pressione di un tasto che rimuoverà un div quando l'utente preme Esc
. Questo funziona per Firefox & IE con il seguente codice:Il tasto di pressione di jQuery non funziona per alcune chiavi in Chrome. Come lavorare?
$("body").keypress(function(e) {
alert("any key pressed");
if (e.keyCode == 27) {
alert("escape pressed");
}
});
Se mi ha colpito un tasto, viene visualizzato il primo alert
, e se ho colpito fuga, viene visualizzato anche il secondo alert
.
Tuttavia, ciò non funziona con Chrome. Il primo alert
viene sempre visualizzato se premo uno dei tasti delle lettere, ma non quando premo Escape, Tab, Space o uno qualsiasi dei numeri.
Perché dovrebbe essere? C'è un modo per convincere Chrome a rispondere a queste pressioni dei tasti?
Questo è un [bug noto] (https://bugs.chromium.org/p/chromium/issues/detail?id=9061) di Chrome. A maggio 2016 uno sviluppatore ha dichiarato di ritenere che il loro comportamento si adattasse meglio alle specifiche e [non lo aggiusterà] (https://bugs.chromium.org/p/chromium/issues/detail?id=9061#c15). – Sheepy