Socket
Socket
Sign inDemoInstall

@bytedo/keyboard

Package Overview
Dependencies
Maintainers
2
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@bytedo/keyboard

支持各种按钮组合。原生js开发, 无任何依赖(不到2KB)。使用也非常简单。


Version published
Maintainers
2
Created
Source

JS键盘热键

支持各种按钮组合。原生js开发, 无任何依赖(不到2KB)。使用也非常简单。

1.x版 功能键(Shift, Ctrl, Alt/Option, Win/Cmd)不区分左右。

keyboard

使用

键盘

import Keyboard from 'http://unpkg.bytedo.org/@bytedo/keyboard/dist/index.js'

var kb = new Keyboard()
// 默认整个document监听, 也可以单独对局部起效
// var kb = new Keyboard(document.querySelector('.foo'))

// 同时按Ctrl键和C键, 触发回调
kb.on(['ctrl + c'], ev => {
  // todo...
})

// 分别按下 Ctrl + C键, 然后再 300毫秒内按下Ctrl + V键, 触发回调
kb.on(['ctrl + c', 'ctrl + v'], ev => {
  // todo...
})

辅助功能键

辅助功能键, 不支持单独设置热键。

包括 Ctrl、Shift、Alt/Option、Win/Cmd 这4个。

普通按键

即除了辅助功能键以外的其他按键。可以单独设置, 也可以配合辅助按键组合使用。

但是, 不允许在一组里出现多次。如需要, 请分组。


var kb = new Keyboard()

// 同时出现C和V这2个普通按键, 是不允许的,
kb.on(['ctrl + c + v'], ev => {
  // todo...
})

// 须改成分2组写
kb.on(['ctrl + c', 'ctrl + v'], ev => {
  // todo...
})

API

  • .disabled

禁止属性, 允许临时暂时热键.

  • .on(actions<Array>, callback<Function>)

监听键盘动作组合, 支持单组或双组。

双组时, 2组按键前后时差不能超过300毫秒, 否则视为2次独立的操作。 键名不区分大小写


  • .off(actions<Array>, callback<Function>)

移除键盘监听。


  • .destroy()

销毁整个键盘监听。

  • .finally(callback<Function>)

类似Promise.finally, 只要有按键被按下(除了纯辅助功能键外), 都会触发回调.

键名对照表

键名不区别大小写, 内部统一转为小写。

原始按键修正后的键名说明
0-90-9数字键直接用阿拉伯数字, 不区别主键位和小数字键盘位
A-Za-z字母键同样不变, 直接原样使用
F1-F12f1-f12fn功能键,同样对应
Prtf13/print2种写法都可以
Scrf14/screen2种写法都可以
Pauf15/pause2种写法都可以
leftleft方向键
rightright方向键
upup方向键
downdown方向键
Pg▴pageup向上翻页
Pg▾pagedown向下翻页
HomehomeHome键
EndendEnd键
Insinsert插入键
Deldelete删除键(注意不是回退键)
Escesc退出键(左上角)
Menumenu菜单键(部分键盘没有这个按键)
Capscapslock大写锁定键(这个键的使用要特别注意)
Numlocknumlock数字键锁定键(87键以下的键盘没有)
Backspacebackspace回退键(=号键右边那个)
Tabtab制表符键
Cmd/WinmetaCommand/Win键(1.x版不区别左右)
Spacespace空格键
CtrlctrlCtrl键(1.x版不区分左右)
ShiftshiftShift键(1.x版不区分左右)
Alt/OptionaltAlt/Option键(1.x版不区分左右)
Enterenter回车键(1.x版不区分小数字键盘的回车)
''单引号键
**小数字键盘中的乘号
++小数字键盘中的加号
--小数字键盘中的减号;及主键盘中的减号 (1.x版不区分)
//小数字键盘中的除号;及主键盘中的斜杠 (1.x版不区分)
.小数字键盘中的小数点;及主键盘中的句号 (1.x版不区分)
,,逗号
;;分号
==等号
[[左边中括号
]]右边中括号
``反引号(Tab上面的键)
\\反斜杠

Keywords

FAQs

Package last updated on 06 Nov 2020

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc