Я создаю веб-приложение в Chrome, и мне нужны некоторые сочетания клавиш и вы хотите использовать функциональные клавиши.Функция блокировки функции переопределения по умолчанию в Chrome
Однако F1 вызывает окно справки, F3 запускает поиск по страницам, обновляет F5 и т. Д. И т. Д. Я хочу отменить эти ключи, поскольку они бесполезны в моем контексте.
Но ... Я не могу предотвратить запуск по умолчанию. Вот мой код:
$(document).keyup(function(e) {
// GET KEYCODE
var keyCode = e.keyCode; //alert(keyCode);
// CHECK KEYBOARD CONTEXT
var keyboardContext = $('#keyboard-context').attr('data-context');
// JS KEYCODES FOR FUNCTION KEYS
var functionKeys = new Array(112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123);
var keyNames = new Array('F1', 'F2', 'F3', 'F4', 'F5', 'F6', 'F7', 'F8', 'F9', 'F10', 'F11', 'F12');
// CONVERT KEYCODE INTO KEYNAME, FOR EASE OF BINDING IN DOM
for (var i = 0; i < functionKeys.length; i++) { if (functionKeys[i] === keyCode) { keyCode = keyNames[i]; } }
// MAKE SURE THAT THE QUICK LAUNCH SHORTCUT KEY, ALWAYS LAUNCHES THE QUICKNAV
if (keyCode === 'F1') {
$('.keyboard-shortcut').each(function() {
if ($(this).data('shortcut-key') === keyCode && $(this).hasClass('load-small-content') && $(this).attr('data-keyboard-context') === 'launch-quick-nav') {
loadSmallContent($(this).data('load-from'));
}
});
}
// PREVENT DEFAULT FOR FUNCTION KEYS
if (functionKeys.indexOf(keyCode) > -1) {
e.preventDefault();
e.stopPropagation();
return false;
}
});
Что я могу сделать, чтобы предотвратить, например, F1 от открытия страницы справки?
HTTP: // WWW Ссылка .quirksmode.org/js/keys.html может помочь вам –
Извините, никакой помощи не найдено ... – EibergDK