vue快速入门(十五)监听键盘事件

注释很详细,直接上代码

上一篇

新增内容

  1. 特定按键监听事件
  2. 全按键监听事件及两种判断方法
    源码
html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
  <!-- 挂载点 -->
  <div id="root"> 
    <!-- 第一种情况是可以使用几个常见的名称来监视对应按键 -->
    <input type="text" v-model="username" @keyup.enter="clickBtn_1">
    <!-- 第二种情况是可以使用键码来监视对应按键 -->
    <input type="text" v-model="password" @keyup.65="clickBtn_2">
    <!-- 当然也可以在方法里面再判断不同按键的情况 -->
    <input type="text" v-model="age" @keyup="clickBtn_3">
  </div>

  <!-- 导入vue的js代码 -->
  <script src="./lib/vue2.js"></script>

  <script>
    const app = new Vue({// Vue实例
      el: '#root',// 挂载点
      data: {// 数据
        username:'',
        password:'',
        age:''
      },
      methods: {// 方法
        clickBtn_1(){
          console.log(this.username);
        }
        ,
        clickBtn_2(){
          console.log(this.password);
        }
        ,
        clickBtn_3(e){
          // 有两种判断方式,第一种是判断按键名称,第二种是判断按键码
          //注意此处的e.key和e.keyCode的区别
          // 键码对应表可参考:https://www.cnblogs.com/lynallylsx/articles/14480181.html
          if(e.key === 'Enter'){
            console.log('enter');
          }else if(e.keyCode === 65){
            console.log('a');
          }
        }
      }
    })
  </script>
</body>
</html>

效果演示


下一篇

相关推荐
FRing031 小时前
vue2干货总结2(v-bind、v-for、v-model、指令修饰符、v-bind操作class和style)
开发语言·前端·vue.js·vue2
幸运小猿2 小时前
模拟慢上传-处理超时重试image 丢失线上问题
前端·javascript·html
速易达网络4 小时前
ECharts 图表制作完全指南:从零到可视化实战
前端·javascript·echarts
徐小夕5 小时前
深度剖析 30k star 的编码 Agent DeepSeek-Reasonix:长会话 Token 成本直降 80%
前端·vue.js·github
paopaokaka_luck5 小时前
灾害应急物资管理系统(AI应急助手、Echarts可视化数据看板、捐赠入库联动、 物资全流程管理、库存变动追溯、灾情资讯与互动反馈、物资发放公示)
java·前端·javascript·spring boot·mysql·tomcat·echarts
kyriewen5 小时前
我验了 7 种 sticky 失效说法:3 种根本不成立
前端·javascript·程序员
我命由我123457 小时前
Python 实用操作 - 文件操作(打开与关闭文件、读取文件、文件写入)
java·开发语言·前端·javascript·数据库·python·java-ee
Momo__7 小时前
你写的 import 重试,从来没生效过
前端·javascript·typescript
ruanno_top7 小时前
1 万行表格只渲染 18 行:虚拟滚动让我放弃了三个功能
vue.js
仨孩子的爹7 小时前
套打总偏两毫米:预印刷单据的校准方法和三个误区
vue.js