2013-03-05 2 views
6

Как создать быстрые клавиши для приложений HTML5? Использование ключевых событий не работает, потому что некоторые браузеры уже определяют большинство этих входов для встроенных функций, таких как Save As ... (которые бесполезны для интерактивных приложений).Создание сочетаний клавиш для вашего приложения HTML5?

+4

Вы должны показать, что вы уже пробовали, и что вам не нравится, есть множество ярлыков, которые не используются браузером ... –

ответ

12

Ну, что один работает для меня: (CTRL-S в Chrome)

$(document).keydown(function(evt){ 
    if (evt.keyCode==83 && (evt.ctrlKey)){ 
     evt.preventDefault(); 
     alert('worked'); 
    } 
}); 
+0

Да, ключ должен использовать 'event.preventDefault()'. все же некоторые ярлыки не будут работать в некоторых браузерах, в то время как другие не будут работать в других браузерах. – lordvlad

+0

Я вижу вашу точку, ctrl-s запускает диалог сохранения с предупреждением в FF, но, как упоминал выше Хуан Мендес, вы должны использовать ярлыки, которые не используется ни в одном браузере, либо имеет псевдонимы для ваших горячих клавиш для разных браузеров. Я определенно не вижу другого способа, поскольку веб-приложение не может переопределять встроенные функции. Возможно, вам стоит задуматься над созданием плагинов для этого. – apoq

+0

Несомненно, event.preventDefault() действительно является ключевым моментом, который я отсутствовал. Могу ли я спросить, является ли ваше решение кросс-браузером (как, например, в спецификации)? – MaiaVictor