pokrewne: JavaScript KeyCode vs CharCodekeypress i keyup - dlaczego kod klucza jest inny?
Oto kod można spróbować w domu albo w jsfiddle:
el.addEventListener('keyup', function(e) {
console.log('Keyup event');
console.log(e.keyCode);
});
el.addEventListener('keypress', function(e) {
console.log('Keypress event');
console.log(e.keyCode);
});
Dlaczego keyCode inaczej?
Rozumiem, dlaczego należy używać tylko naciśnięcia klawisza, ale nie rozumiem, jak dwa kluczowe zdarzenia, przy tym samym naciśnięciu klawisza na klawiaturze, dają różne kody kluczy.
PS: Nie martwię się obsługą starszych przeglądarek, próbowałem tego w Chrome i byłem zaskoczony i nie mogłem znaleźć wytłumaczenia.
Pytanie [onKeyPress Vs. onKeyUp i onKeyDown] (http://stackoverflow.com/questions/3396754/onkeypress-vs-onkeyup-and-onkeydown) jest w pewnym stopniu powiązany i może również być interesującą lekturą. –