1Introduction
- description:热键类
- author:ydr.me
- create:2016年06月04日14:09:36
- update:2016年06月04日14:09:36
- github:https://github.com/blearjs/blear.classes.hotkey
2Example
var Hotkey = require('blear.classes.hotkey');
var ht = new Hotkey();
ht.bind('ctrl + b', function(ev, shortcut) {
// 当按下 Ctrl + B 的时候触发
});
3Static
3.1.defaults
- 类型:
Object
- 说明:默认配置
3.1.1.defaults.el
- 类型:
String | Element
- 说明:监听的元素
- 默认:
document
3.1.2.defaults.keyEvent
- 类型:
String
- 说明:键盘事件名称
- 默认:
keydown
3.2.mac
- 类型:
Boolean
- 说明:返回当前键盘类型是否为 mac 键盘
3.3.normalize(shortcut): keyPath
标准化快捷键为键程。
Hotkey.normalize('ctrl + z');
// => "control+z"
Hotkey.normalize('ctrl + alt + shift + meta + z');
// => "alt+control+meta+shift+z"
3.3.1shortcut
- 类型:
String
- 说明:快捷键
3.3.2keyPath
- 类型:
String
- 说明:键程
4new Hotkey(options)
实例化一个热键监听器,options
为入参,默认值为 .defaults
。
热键组合如下:
- 辅助键
alt
ctrl
/control
shift
meta
- 普通键
backspace
tab
enter
pause
capslock
esc
spacebar
pageup
pagedown
end
home
left
up
right
down
insert
del
0 - 9
a - z
0 - 9
(小键盘)multiply
add
subtract
decimal
divide
f1 - f24
;
=
,
.
/
~
[
\\
]
'
5Prototype
5.1#bind(shortcut, listener(ev, keyPath))
添加热键绑定。
5.1.1shortcut
- 类型:
String
- 说明:热键名称
5.1.2listener
- 类型:
Function
- 说明:回调
5.1.3listener: this
- 类型:
Hotkey
- 说明:
Hotkey
实例
5.1.4listener: ev
- 类型:
KeyboardEvent
- 说明:键盘事件
5.1.5listener: keyPath
- 类型:
String
- 说明:序列化之后的键程
5.2#unbind(shortcut, listener)
解除热键绑定。
- 0 个参数:解除所有热键绑定。
- 1 个参数:解除指定热键绑定。
- 2 个参数:解除指定热键余指定回调的绑定。
5.2.1shortcut
- 类型:
String
- 说明:热键名称
- 默认:空
5.2.2listener
- 类型:
Function
- 说明:回调
- 默认:空
5.3#destroy()
销毁实例。
6Events
6.1hotkey(ev, keyPath)
6.1.1listener: ev
- 类型:
KeyboardEvent
- 说明:键盘事件
6.1.2listener: keyPath
- 类型:
String
- 说明:序列化之后的键程
7Dependencies
- blear.classes.events
- blear.core.event
- blear.core.selector
- blear.utils.access
- blear.utils.array
- blear.utils.object
8Reference
- 初始化一个键盘事件 keqingrong.github.io