#javascript #keyboard-shortcuts #keyboard-layout
#javascript #сочетания клавиш #раскладка клавиатуры
Вопрос:
Я пытаюсь создать веб-приложение с горячими клавишами, которые работают одинаково для всех раскладок клавиатуры. Я делал это раньше с другими языками, но мне не удалось найти способ с помощью Javascript. Я могу получить только символ нажатой клавиши, а не клавишу, независимую от раскладки клавиатуры.
В документе MDN для «keydown» код ключа выглядел многообещающим, но это было не так.
Есть ли способ нажать клавишу, а не символ?
Лучшее решение, которое я могу придумать без этого, — это опция перевода пользовательского макета, скрытая где-то в настройках, что тоже хорошо.
Комментарии:
1. Я не понимаю, зачем вам это нужно; как пользователь узнает, какую клавишу нажать, если клавиша не зависит от символа на клавише?
2. ctr-z является распространенным примером этого. То, что в вашем макете есть какая-то другая буква, где обычно находится z, не означает, что вы хотите, чтобы это была ваша горячая клавиша.
3. но в данном случае я использую клавиатуру как пианино, и лично я использую раскладку alt, но я хотел бы писать код для себя и пользователей QWERTY одновременно.
Ответ №1:
Вы не сможете получить эту информацию непосредственно из API-интерфейсов браузера. Одной из возможностей может быть использование плагина, такого как Layoutline (demo), который может быть обязательным шагом для пользователей вашего приложения.