Я задавался вопросом об одном и том же много лет.Недавно мне надоело искать коды клавиш для событий, которые я написал для модуля под названием keysight , который переводит события keypress
, keydown
и keyup
в символы и ключи соответственно.
Пример:
element.addEventListener("keydown", function(event) {
var character = keysight(event).char
})
Он ничего не игнорирует на Ctrl, поэтому вам придется делать это вручную, если хотите.Но он выполняет всю остальную логику, которую вы дали.