Я хочу создать форум bbs, который использует много событий Keyboard,
так что это лучшая библиотека событий клавиатуры,
спасибо
Я хочу создать форум bbs, который использует много событий Keyboard,
так что это лучшая библиотека событий клавиатуры,
спасибо
Еще один, чтобы бросить в микс. Недавно я выпустил один под названием Mousetrap. Вы можете проверить примеры на http://craig.is/killing/mice
Попробуйте KeyboardJS
его так же просто, как
KeyboardJS.on('a', function(){ alert('hello!'); });
пока гибко, как
var bindInstance = KeyboardJS.on('ctrl + a, ctrl + b, c', function(event, keysPressedArray, keyComboString){
//you get the event object
console.log('event object', event);
//you get the keys pressed array
console.log('keys pressed', keysPressedArray);
//you get the key combo string
console.log('combo pressed', keyComboString);
console.log('I will fire when \'ctrl + a\' or \'ctrl +b\' or \'c\' is pressed down');
//block event bubble
return false;
}, function(event, keysPressedArray, keyComboString) {
console.log('I will fire on key up');
//block event bubble
return false;
});
вы можете удалить привязку, вызвав
bindInstance.clear();
вы можете очистить все привязки с помощью определенных клавиш с помощью
KeyboardJS.clear('a, b');
С открытым исходным кодом и доступен на Github. Он входит в эфир глобальной библиотекой или модулем AMD для RequireJS.
Здесь представлено видеоролик.
Теперь перестаньте беспокоиться о клавиатуре и закодировать свое приложение.;)
Из того, что я видел, Mousetrap - единственная библиотека, которая позволяет вам указывать ключевые последовательности, а не комбинации. Это очень удобно для моего приложения.
KEYPRESS ориентирован на вход игры и поддерживает любую клавишу в качестве модификатора, среди других функций. Он также предварительно упакован для Meteor.
Этот файл довольно хорош для jquery.
Множество библиотек JavaScript заполнено способами захвата ввода ключа и использования его в ваших интересах. Это хорошая ставка, что вы сможете найти библиотеку, чтобы сделать именно это, и больше ничего. Однако у меня не так много опыта.
Я использовал Ext некоторое время, а их KeyMap класс очень прост в работе. Вот простой пример его использования.
new Ext.KeyMap(Ext.getDoc(), {
key: 'abc',
alt: true,
handler: function(k, e) {
var t = Ext.getCmp('tabpanel');
switch(k) {
case 65:
t.setActiveTab(0);
break;
case 66:
t.setActiveTab(1);
break;
case 67:
t.setActiveTab(2);
break;
}
},
stopEvent: true
});
Это принимает класс Ext.TabPanel и позволяет пользователю нажимать клавишу клавиатуры для изменения вкладок, вместо того, чтобы щелкать сами вкладки.
Это, конечно, может сделать гораздо больше. Это простой пример того, как это работает.
Это лучше, если вы начинаете и хотите понять, как работают горячие клавиши.
https://github.com/UthaiahBollera/HotkeysInJavascriptLibrary
Вы можете попробовать этот...