# 快捷键

# 说明

快捷键模块包含了一些常用的快捷键绑定方法,导出模块名为key

# 方法

# esc

说明:esc快捷键绑定

版本:1.1.1

  • 参数
    • handler:Function | Array<Function> 绑定的回调函数或回调函数队列
  • 返回:Function 一个卸载此按键回调方法的函数

# enter

说明:enter快捷键绑定

版本:1.1.1

  • 参数
    • handler:Function | Array<Function> 绑定的回调函数或回调函数队列
    • el:string | HTMLElement | document 绑定的元素,可选,默认为document
    • options:Object 配置,可选,默认{propagation:false,default:false}
    • options.propagation:boolean 事件执行是否冒泡,默认false
    • options.default:boolean 事件执行是否具有默认行为,默认false
  • 返回:Function 一个卸载此按键回调方法的函数

# f1

说明:f1快捷键绑定

版本:1.1.1

  • 参数
    • handler:Function | Array<Function> 绑定的回调函数或回调函数队列
  • 返回:Function 一个卸载此按键回调方法的函数

# bind

说明:f1快捷键绑定

版本:1.1.1

  • 参数
    • code:number | string | Array<number | string> 要绑定的快捷键,支持键码如65,键别名如escape,或键名简写如esc,支持传入数组(组合键)
    • handler:Function | Array<Function> 绑定的回调函数或回调函数队列
    • el:string | HTMLElement | document 绑定的元素,可选,默认为document
    • options:Object 配置,可选,默认{propagation:false,default:false}
    • options.propagation:boolean 事件执行是否冒泡,默认false
    • options.default:boolean 事件执行是否具有默认行为,默认false
  • 返回:Function | void 成功卸载此次设置的函数,失败返回空

示例

//支持按键别名,忽略大小写
bind('ESC',(e)=>{
  alert("按下ESC键---------------->",e)
})
//支持按键名,忽略大小写
bind('escape',(e)=>{
  alert("按下ESC键---------------->",e)
})
//支持键码
bind(65,(e)=>{})
//支持组合键,格式可为:'key1+key2'、'key1,key2'、'key1 key2',[key1,key2]
//如下方式效果等同
bind('ctrl+a',(e)=>{})
bind('ctrl,a',(e)=>{})
bind(['ctrl','a'],(e)=>{})
bind('ctrl a',(e)=>{})
//支持handler集合,hanlder集合顺序执行,遇见不为function类型的数据会有警告提示并跳过执行
bind('ctrl a',[(e)=>{},(e2)=>{}])

提示:

  • 方法内置的按键别名有:esc(等同键名Escape)、space(等同于建码32,空格键)、enter(等同于键名Enter)、ctrl(等同于键名Control)、win(等同于键名Meta)、equal(等同于键名=)
  • 由于浏览器行为,因此不建议辅助键和辅助组合键同时绑定,如同时绑定ctrlctrl+a