首页 > 其他分享 >11_Vue键盘事件与别名

11_Vue键盘事件与别名

时间:2022-10-26 08:34:50浏览次数:42  
标签:11 触发 Vue keyup keydown 键盘 别名 按键

键盘事件

@keyup和@keydown

  1. keyup:按键弹起触发
  2. keydown:键盘按下触发,一直按住一直触发

准备工作

image-20221024234656135

image-20221024234641665

10-24-1

那么针对keyup和keydown,我们可以设计单独的按键监听事件,也就是针对一个按键触发

别名

vue给常用的按键都起了别名

一共有9个

image-20221024232729798

准备工作

<!-- 创建一个容器 -->
<form class="app">
    <!-- keyup -->
    keyup:<input type="text" @keyup="showInfo" /><br>
    <!-- keydown -->
    keydown:<input type="text" @keydown="showInfo" /><br>

    <!-- 别名 -->
    <div class="box" style="margin:20px 0;">
        enter:<input type="text" @keyup.enter="byname" /><br>
        del:<input type="text" @keyup.delete="byname" /><br>
        backspace:<input type="text" @keyup.delete="byname" /><br>
    </div>

    清空:<input type="reset">
</form>
<script>
    var vm = new Vue({
        el: '.app',
        data: {
            name: 'wavesbright'
        },
        methods: {
            // keyup or keydown
            showInfo(e) {
                console.log(123);
            },
            // 别名
            byname(e){
                // 打印按键名称
                console.log(e.key);
            }
        },
    });
</script>

测试

10-24-2

没有别名怎么办

event当中的key和kecode

key:按键的名字

keycode:按键的编码

打印一下就知道了

image-20221024235346780

测试

10-24-3

键盘五花八门,不是所有按键都能够绑定键盘事件的,花里胡哨的按键,比如背光这种

案例

我们以 大小写按键 == Capslk举例子

image-20221025000030658

像这种双驼峰的,需要使用另一种写法才行

image-20221025000220343

10-24-4

关于tab

  • 这个键位比较特殊
  • 因为tab本身就有切走元素的意思
  • 将焦点从当前dom元素当中切走
  • 你的事件本身绑定在当前DOM元素身上,被切走了那还能触发事件吗?
  • 我这里指的是 keyup,keydown的话使用tab就很好用,我们来看看区别

准备工作

<!-- 关于tab -->
<div class="box" style="margin:20px 0;">
    up:<input type="text" @keyup.tab="byTab('这是keyup触发')" /><br>
    down:<input type="text" @keydown.tab="byTab('这是keydown触发')" /><br>
</div>
// 关于tab键位
byTab(text){
    console.log(text);
}

测试

10-24-5

系统修饰键

  1. ctrl
  2. alt
  3. shift
  4. meta(windows的徽标键)
    • image-20221025001253817
  5. 这四兄弟配合keyup使用都是有问题的

逻辑

配合keyup:按下修饰键的同时,按下其他按键,释放其他按键,事件才能被触发

配合keydown:正常触发

通过建码修饰

image-20221025001703876

不被推荐

image-20221025001734238

不同的键盘,编码可能不统一

自定义别名

vue.config.keycodesxxxx

image-20221025001909937

也不太推荐,默认的够用了

标签:11,触发,Vue,keyup,keydown,键盘,别名,按键
From: https://www.cnblogs.com/wavesbright/p/16827042.html

相关文章

  • 12_Vue事件总结
    事件总结事件修饰符连携准备工作html<!--定义一个容器--><divclass="app"><!--事件修饰符连携--><divclass="box"@click="toBaidu"><ahre......
  • 【转】VUE 动态绑定 html 的 class
            ......
  • P7911 网络连接评论及c++题解
    P7911网络连接1.原题链接root2.评论下位黄的水平前置知识:sscanf()函数,sprintf()函数,map<>当然,不会sscanf()和sprintf()也有解法,详见解法13.解法解法1#inclu......
  • Vue入门简易命令
    Vue入门简易命令style和class<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>Title</title><scriptsrc="https://cdn.bootcdn.n......
  • Vue
    目录前端发展Vue的使用插值语法指令系统文本指令事件指令属性指令属性条件渲染列表渲染双向数据绑定事件处理事件修饰符按键修饰符前端发展1.前端发展史1.1HTML(5)+c......
  • java: 无效的目标发行版: 11
    一、修改项目结构二、修改java编译器三、修改maven运行jre大功告成!......
  • vue2- style 和class - 条件渲染 - 列表渲染 - v-for 循环,数组,循环字符串,数字,对象 -
    style和class条件渲染列表渲染v-for循环,数组,循环字符串,数字,对象数组的检测与更新双向数据绑定事件处理过滤案例事件修饰符按键修饰符1.style和class<!DOCT......
  • day11DOM和BOM回顾以及事件讲解 ( 上 )
    内容回顾BOM(bowserobjectmodel)浏览器对象模型window:窗口对象(全局的变量及函数都属于window也就是global全局对象)location:地址栏对象(获取地......
  • 【2022.10.25】Vue基础学习(2)
    今日详情1.style和class2.条件渲染3.列表渲染3.1v-for循环数组,循环字符串,数字,对象3.2数组的检测与更新4.双向数据绑定5.事件处理5.1过滤案例5.2事件修饰......
  • chrome插件 vue-devtools zip 编译
    背景,工程代码在内网无法联网百度等,需要离线安装该工具开发vuejs工程 一、从有网络的地方拷贝插件xxxxx.crx,觉得这种比较合理注意,网上说的从chrome://extensions/查看......