Обработка событий нажатия клавиш (F1-F12) с использованием JavaScript и jQuery, кросс-браузер - PullRequest
63 голосов
/ 08 января 2009

Я хочу обработать клавиши F1-F12, используя JavaScript и jQuery.

Я не уверен, какие подводные камни следует избегать, и в настоящее время я не могу протестировать реализации в любых других браузерах, кроме Internet Explorer 8, Google Chrome и Mozilla FireFox 3.

Какие-либо предложения для полного кросс-браузерного решения? Что-то вроде хорошо протестированной библиотеки jQuery или, может быть, просто ванильный jQuery / JavaScript?

Ответы [ 13 ]

0 голосов
/ 10 декабря 2016

Когда вы используете angular.js для обработки событий, вы должны использовать ng-keydown для предотвращения pause in developer в chrome.

0 голосов
/ 09 июня 2015

Попробуйте это решение, если работает.

window.onkeypress = function(e) {
    if ((e.which || e.keyCode) == 116) {
        alert("fresh");
    }
}
0 голосов
/ 25 февраля 2015

Добавить ярлык:

$.Shortcuts.add({
    type: 'down',
    mask: 'Ctrl+A',
    handler: function() {
        debug('Ctrl+A');
    }
});

Начать реагировать на ярлыки:

$.Shortcuts.start();

Добавить ярлык в «другой» список:

$.Shortcuts.add({
    type: 'hold',
    mask: 'Shift+Up',
    handler: function() {
        debug('Shift+Up');
    },
    list: 'another'
});

Активировать «другой» список:

$.Shortcuts.start('another');
Remove a shortcut:
$.Shortcuts.remove({
    type: 'hold',
    mask: 'Shift+Up',
    list: 'another'
});

Stop (отменить привязку обработчиков событий):

$.Shortcuts.stop();


Учебник
http://www.stepanreznikov.com/js-shortcuts/

...