relacionadas: JavaScript KeyCode vs CharCodetecla y teclados: ¿por qué el código de tecla es diferente?
Aquí hay un código que puede probar en casa o en un 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);
});
¿Por qué es el código clave diferente?
Entiendo por qué uno debe usar la tecla presionar solamente, pero lo que no entiendo es cómo dos eventos clave, dados la misma tecla de golpe en el teclado, dan diferentes códigos de tecla.
PD: No me preocupo por el soporte de navegadores antiguos, probé esto en Chrome y me sorprendió y no pude encontrar una explicación.
La pregunta [onKeyPress vs. onKeyUp y onKeyDown] (http://stackoverflow.com/questions/3396754/onkeypress-vs-onkeyup-and-onkeydown) está relacionado de alguna manera y también puede ser una lectura interesante. –