Как создать быстрые клавиши для приложений HTML5? Использование ключевых событий не работает, потому что некоторые браузеры уже определяют большинство этих входов для встроенных функций, таких как Save As ... (которые бесполезны для интерактивных приложений).Создание сочетаний клавиш для вашего приложения HTML5?
ответ
Ну, что один работает для меня: (CTRL-S в Chrome)
$(document).keydown(function(evt){
if (evt.keyCode==83 && (evt.ctrlKey)){
evt.preventDefault();
alert('worked');
}
});
Да, ключ должен использовать 'event.preventDefault()'. все же некоторые ярлыки не будут работать в некоторых браузерах, в то время как другие не будут работать в других браузерах. – lordvlad
Я вижу вашу точку, ctrl-s запускает диалог сохранения с предупреждением в FF, но, как упоминал выше Хуан Мендес, вы должны использовать ярлыки, которые не используется ни в одном браузере, либо имеет псевдонимы для ваших горячих клавиш для разных браузеров. Я определенно не вижу другого способа, поскольку веб-приложение не может переопределять встроенные функции. Возможно, вам стоит задуматься над созданием плагинов для этого. – apoq
Несомненно, event.preventDefault() действительно является ключевым моментом, который я отсутствовал. Могу ли я спросить, является ли ваше решение кросс-браузером (как, например, в спецификации)? – MaiaVictor
попытаться дать этот вид.
http://www.openjs.com/scripts/events/keyboard_shortcuts/#add_docs
образец добавить ярлыку
shortcut.add("Ctrl+B",function() {
alert("Bold");});
образец удалить ярлык
shortcut.remove("Ctrl+B");
shortcut.js ужасно медленный. он набирает кошмар. –
Вы должны показать, что вы уже пробовали, и что вам не нравится, есть множество ярлыков, которые не используются браузером ... –