vue键盘事件
2020-04-08 本文已影响0人
Jabo
背景
键盘事件在前端的应该还是很普遍的,尤其在有多个搜索条件的时候。
键盘值表
code | 按键 |
---|---|
48到57 | 0到9 |
65到90 | a到z(A到Z) |
112到135 | F1到F24 |
8 | BackSpace(退格) |
9 | Tab |
13 | Enter(回车) |
20 | Caps_Lock(大写锁定) |
32 | Space(空格键) |
37 | Left(左箭头) |
38 | Up(上箭头) |
39 | Right(右箭头) |
40 | Down(下箭头) |
Vue 按键别名
别名 | 按键 |
---|---|
.delete | delete(删除)/BackSpace(退格) |
.tab | Tab |
.enter | Enter(回车) |
.esc | Esc(退出) |
.space | Space(空格键) |
.left | Left(左箭头) |
.up | Up(上箭头) |
.right | Right(右箭头) |
.down | Down(下箭头) |
.ctrl | Ctrl |
.alt | Alt |
.shift | Shift |
.meta | (window系统下是window键,mac下是command键) |
键盘事件顺序
keydown → keypress → keyup
js原生事件
// 方式1
document.onkeydown = event => {
let e = event || window.event || arguments.callee.caller.arguments[0];
console.log(e)
};
// 方式2
document.addEventListener("keyup", e => { console.log(e) })
Vue键盘事件
// 回车事件
<input @keyup.enter="submit">
<!-- 按下Alt + 释放C触发 -->
<input @keyup.alt.67="clear">
<!-- Ctrl + Click -->
<div @click.ctrl="doSomething">Do something</div>
<el-input v-model="form.name" placeholder="昵称" @keyup.enter.native="submit"></el-input>
细心的小伙伴应该发现了最后一个加了一个native修饰符。这个是因为element ui 默认封装了input事件,我们需要通过修饰符告诉它,我们要用原生input事件哈
总结
喜欢您就收藏分享或来搞哈!