Po pierwsze, po to pomocne źródło: http://unixpapa.com/js/key.html
Po drugie, należy wiedzieć, że istnieje różnica między keydown (lub keyup) i naciśnięciu klawisza . keypress zazwyczaj nie dopuszcza klawiszy modyfikujących, chociaż niektóre pozwalają w Operze na kontrolowanie. Lepiej używać keydown dla spójności między przeglądarkami.
uzyskać keyCode === 13 w Operze 11.10 bez względu na to, czy pole tekstowe jest wprowadzony czy nie i bez względu na to, czy za pomocą Prototype tak:
Event.observe(document, 'keydown', function (e) {
alert(e.charCode+'::'+e.keyCode);
});
lub stosując metodę natywną bezpośrednio (za pomocą attachEvent dla IE):
if (document.addEventListener) {
document.addEventListener('keydown', function (e) {
alert(e.charCode+'::'+e.keyCode);
}, false);
}
else { // IE
document.attachEvent('onkeypress', function (e) {
alert(e.charCode+'::'+e.keyCode);
});
}
Jednakże aLT jest rzeczywiście nie wykryto wewnątrz tekstowe, chyba że w połączeniu z funkcją lub klawisza sterującego (ale to nie działa w Chrome lub IE). Może to być spowodowane tym, że Windows używa alt, aby dać dostęp do paska menu aplikacji.
Można spróbować przy użyciu klawisza sterującego i używając preventDefault() (aby uniknąć domyślnych zachowań, takich jak Ctrl-F robi stronę Znajdź), choć może to drażnić użytkowników, którzy mogą nie chcieć ich zachowania przeglądarek wyłączone dla swojej strony.