Веб-приложение ASP.NET 2.0, как реализовать комбинацию горячих клавиш CTRL + Letter, предпочтительно через JavaScript, чтобы сделать веб-приложение эргономически лучше? Как записывать события клавиатуры с несколькими клавишами с помощью JavaScript?



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Javascript поддерживает ключи ctrl + alt + shift. Я полагаю, вы сможете понять остальное. Связь.
Ваша функция прослушивателя событий получает объект Event. Там есть много полезной информации, включая свойства altKey, ctrlKey, shiftKey и metaKey. Если при возникновении этого события удерживается нажатой какая-либо из клавиш-модификаторов, для соответствующего свойства устанавливается значение true.
Это относится как к событиям клавиатуры, так и к событиям мыши (onclick и т. д.). Обратите внимание, что если у вас есть прослушиватель событий onkeydown, сама клавиша-модификатор запускает событие.
window.onkeyup = function(e) {
if (e.altKey) alert("Alt pressed");
if (e.shiftKey) alert("Shift pressed");
}
Это проверено на Firefox 3, Windows XP.
Я знаю, что это не ответ на исходный вопрос, но вот мой совет: не используйте сочетания клавиш в веб-приложении!
Почему? Потому что это может нарушить удобство использования, вместо того, чтобы повысить его. Хотя общепринято, что "горячие клавиши" не используются в обычных браузерах (Opera удаляет их по умолчанию из своей последней основной версии), вы не можете понять, какие сочетания клавиш используются в различных браузерах и какие они будут. .
Более того, если ваши посетители используют настраиваемый браузер, такой как Firefox или Opera, существует высокий риск того, что они либо настроят свои собственные ярлыки, либо используют дополнительные плагины, которые определяют некоторые дополнительные.
Имейте в виду, что веб-приложения зависят от браузера, и вы НИКОГДА не должны предполагать, что, если они работают в вашем любимом-наиболее-мощном-браузере, они будут одинаково реагировать на браузер вашего друга.
Короткий ответ заключается в том, что вы используете Javascript для захвата события keydown и используете это событие для запуска функции. Соответствующие статьи:
Если вы используете библиотека jQuery, я бы посоветовал вам взглянуть на Плагин HotKeys для кроссбраузерного решения.
I know this is not answering the orginal question, but here is my advice: Don't Use Key Combination Shortcuts In A Web Application!
Why? Because it might break de the usability, instead of increasing it. While it's generally accepted that "one-key shortcut" are not used in common browsers (Opera remove it as default from its last major version), you cannot figure out what are, nor what will be, the key combination shortcuts used by various browser.
Гизмо хорошо замечает. Некоторая информация о часто используемых назначениях клавиш доступа находится в http://www.clagnut.com/blog/193/.
Если вы все же измените ключи доступа, вот несколько статей с хорошими советами о том, как это сделать правильно:
И вы можете найти эту страницу Сочетания клавиш и мыши по умолчанию в Firefox полезной (Другая версия той же информации). Сочетания клавиш для Internet Explorer 7 и Internet Explorer 6. Сочетания клавиш для Operaи Safari.
У вас больше шансов столкнуться с проблемами с Челюсти или другими программами чтения с экрана, которые добавляют дополнительные сочетания клавиш.
конечно это будет полезно