Appearance
Mousetrap
简介
Mousetrap 是一个简单且轻量级的 JavaScript 库,用于处理键盘快捷键。它体积小(约 2KB gzip 压缩后),无外部依赖,支持多种浏览器(包括 IE6+、Safari、Firefox、Chrome)。
特点
mod键:支持 Windows 和 Mac 两种操作系统的快捷键绑定。(mod键代表 Windows 的Ctrl键,Mac 的⌘键)
安装
bash
npm install mousetrap --save使用
- 绑定快捷键
javascript
import Mousetrap from 'mousetrap';
// 绑定 Windows 快捷键
Mousetrap.bind('ctrl+s', function(e) {
e.preventDefault(); // 阻止默认事件
console.log('ctrl+s 被触发');
});
// 绑定 Mac 快捷键
Mousetrap.bind('command+s', function() {
console.log('command+s 被触发');
});
// 同时支持 Windows 和 Mac
Mousetrap.bind('mod+s', function() {
console.log('mod+s 被触发');
});
// 绑定组合键
Mousetrap.bind('ctrl+shift+s', function() {
console.log('ctrl+shift+s 被触发');
});- 解绑快捷键
javascript
// 解绑单个快捷键
Mousetrap.unbind('mod+s');
// 解绑多个快捷键
Mousetrap.unbind(['ctrl+s', 'command+s']);- 定数字键和数字键盘
javascript
import Mousetrap from 'mousetrap';
// 绑定普通数字键
Mousetrap.bind('1', function() {
console.log('普通数字键 1 被按下');
});
// 绑定数字键盘上的数字键
Mousetrap.bind('numpad1', function() {
console.log('数字键盘上的 1 被按下');
});
// 绑定数字键盘上的特殊键
Mousetrap.bind('numpad+', function() {
console.log('数字键盘上的加号键被按下');
});
// 解绑快捷键
Mousetrap.unbind('numpad1');-触发键盘事件
javascript
import Mousetrap from 'mousetrap';
Mousetrap.trigger('ctrl+s');