Vue键盘事件keyup、keydown
- Vue中的键盘事件
keyup
表示键盘按键抬起事件,keydown
表示键盘按下事件;两个用法相同。
- 用法比较简单,直接跟在
v-on
后面使用,示例:<input type="text" v-on:keydown="logName">
,当有键盘按键按下时调用logName()
函数。
- 可以指定某个按键触发,例如制定输入内容后,按enter键触发,代码:
<input type="text" v-on:keydown.enter="logName">
,也可以同时按多个键触发,例如按alt+enter触发:<input type="text" v-on:keyup.alt.enter="logAge">
完整代码展示:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<title>Document</title>
</head>
<body>
<div id="vue-app">
<h1>Events</h1>
<label>姓名</label>
<input type="text" v-on:keydown="logName">
<!-- <input type="text" v-on:keydown.enter="logName"> -->
<!--键盘按键抬起事件监听 -->
<label>年龄</label>
<!-- <input type="text" v-on:keyup="logAge"> -->
<input type="text" v-on:keyup.alt.enter="logAge">
<!--键盘按键抬起事件监听 -->
</div>
</body>
<script>
new Vue({
el: '#vue-app',
data() {
return {};
},
methods: {
logName() {
console.log('正在输入名字...');
},
logAge() {
console.log('正在输入年龄...');
}
}
})
</script>
</html>