shortcut.js 用 JavaScript 处理键盘快捷键
用 JavaScript 处理键盘快捷键,尽管现在有许多 JavaScript 库可用,但我找不到一个可以方便地向您的 JavaScript 应用程序添加键盘快捷键(或加速器)的库。这是因为键盘快捷键只在 JavaScript 游戏中使用,没有真正的 Web 应用程序使用键盘快捷键在其界面周围导航。但谷歌应用程序,如谷歌阅读器和 Gmail 改变了这一点。因此我创建了一个函数,使向应用程序添加快捷方式更加容易。
方法事件
shortcut.add()
- 第一个参数:快捷键组合 - String
- 快捷键组合应以此格式指定
Modifier[+Modifier..]+Key
- 第二个参数:回调函数 - Function
- 在这里指定函数。如果按下快捷键,将调用此函数。事件变量将传递给它。
- 第三个参数 [可选] : Options - Associative Array
- 这个参数必须是与这三个选项中的任何一个相关联的数组。
- type - String
- 事件类别 - 可以是 keydown、keyup、keypress,默认值 keydown
- disable_in_input - Boolean
- 如果将此设置为 true,则将在输入和文本区域字段中禁用键盘捕获。如果这些元素具有焦点,则键盘快捷方式将无法工作。这对于单键快捷键非常有用。默认值 false
- target - DOM Node
- 应该监视键盘事件的元素,默认值 document
- propagate - Boolean
- 是否允许事件冒泡,默认值 false
- keycode - Integer
- 监听键码,例如键码 65 就是字母 a。
{ 'type':'keydown', 'propagate':false, 'disable_in_input':true, 'target':document, 'keycode':65 }
示例
shortcut.add("Ctrl+B",function() {
alert("The bookmarks of your browser will show up after this alert...");
},{
'type':'keydown',
'propagate':true,
'target':document
});
shortcut.remove()
只有一个参数--之前附加到函数的快捷组合。确保此字符串与添加快捷方式时使用的字符串完全相同。
shortcut.add("Ctrl+B",function() {
alert("Bold");
});
//Remove the shortcut
shortcut.remove("Ctrl+B");
支持的热键
快捷键应以此格式指定。
Modifier[+Modifier..]+Key
例如
Ctrl+A
有效的修饰符是:
- Ctrl
- Alt
- Shift
- Meta
您可以指定一个没有修饰符的序列,例如:
shortcut.add("X",function() {
alert("Hello!");
});
有效的热键
- 所有字母键和数字键 - abc...xyz,01..89
- 特殊字符,标准键盘上的每个特殊字符都可以访问。
- 特殊键
- Tab
- Space
- Return
- Enter
- Backspace
- Scroll_lock
- Caps_lock
- Num_lock
- Pause
- Insert
- Home
- Delete
- End
- Page_up
- Page_down
- Left
- Up
- Right
- Down
- F1
- F2
- F3
- F4
- F5
- F6
- F7
- F8
- F9
- F10
- F11
- F12
这些键不区分大小写,所以不要担心使用正确的大小写,这个库处于测试版,所以请期待一些问题。欢迎提出建议。
相关链接
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论