内容简介:A tiny (~400 B) & modern library for keybindings.Keybindings are made up of aA
tinykeys
A tiny (~400 B) & modern library for keybindings. See Demo
Install
npm install --save tinykeys
Usage
import tinykeys from "tinykeys"
tinykeys(window, {
"Shift+D": () => {
alert("The 'Shift' and 'd' keys were pressed at the same time")
},
"y e e t": () => {
alert("The keys 'y', 'e', 'e', and 't' were pressed in order")
},
"$mod+KeyD": () => {
alert("Either 'Control+d' or 'Meta+d' were pressed")
},
})
Keybinding Syntax
Keybindings are made up of a sequence of presses .
A
press
can be as simple as a single
key
which matches against
KeyboardEvent.code
and
KeyboardEvent.key
(case-insensitive).
// Matches `event.key`: "d" // Matches: `event.code`: "KeyD"
Presses can optionally be prefixed with
modifiers
which match against any
valid value to
KeyboardEvent.getModifierState()
.
"Control+d" "Meta+d" "Shift+D" "Alt+KeyD" "Meta+Shift+D"
There is also a special $mod
modifier that makes it easy to support cross
platform keybindings:
-
Mac:
$mod=Meta(⌘) -
Windows/Linux:
$mod=Control
"$mod+D" // Meta/Control+D "$mod+Shift+D" // Meta/Control+Shift+D
Keybinding Sequences
Keybindings can also consist of several key presses in a row:
"g i" // i.e. "Go to Inbox" "g a" // i.e. "Go to Archive" "ArrowUp ArrowUp ArrowDown ArrowDown ArrowLeft ArrowRight ArrowLeft ArrowRight B A"
Each press can optionally be prefixed with modifier keys:
"$mod+K $mod+1" // i.e. "Toggle Level 1" "$mod+K $mod+2" // i.e. "Toggle Level 2" "$mod+K $mod+3" // i.e. "Toggle Level 3"
Each press in the sequence must be pressed within 1000ms of the last.
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
C++ 程序设计语言(特别版)(英文影印版)
[美] Bjarne Stroustrup / 高等教育出版社 / 2001-8-1 / 55.00
《C++程序设计语言》(特别版)(影印版)作者是C++的发明人,对C++语言有着全面、深入的理解,因此他强调应将语言作为设计与编程的工具,而不仅仅是语言本身,强调只有对语言功能有了深入了解之后才能真正掌握它。《C++程序设计语言》编写的目的就是帮助读者了解C++是如何支持编程技术的,使读者能从中获得新的理解,从而成为一名优秀的编程人员和设计人员。一起来看看 《C++ 程序设计语言(特别版)(英文影印版)》 这本书的介绍吧!