Vue中鍵盤監(jiān)聽事件(解決element監(jiān)聽鍵盤不生效)

Vue監(jiān)聽鍵盤,直接用@綁定就可以,而且Vue為幾個常用的按鍵提供了別名,不用去查詢按鍵的keyCode
  • 全部的按鍵別名

.enter
.tab
.delete (捕獲“刪除”和“退格”鍵)
.esc
.space
.up
.down
.left
.right

一、input標簽綁定esc鍵

  • <template></template> 中綁定事件

    <input type="text" @keyup.esc="KeyUpEsc">
    
  • <script></script>中定義事件

    KeyUpEsc:function(){
          alert("監(jiān)聽到esc鍵")
      }
    

實現(xiàn)效果截圖

二、使用element組件庫的el-input標簽,綁定delete鍵

  • <template></template> 中綁定事件
    <el-input v-model="input" placeholder="請輸入內(nèi)容" @keyup.delete.native="KeyUpDelete"></el-input>
  • 為什么這次綁定事件多一個.native修飾符,這個可能是因為element-ui封裝了個div在input標簽外面,把原來的事件隱藏了,所以如果不加.native的話,按鍵不會生效

  • <script></script>中定義事件

     KeyUpDelete :function(){
          alert("監(jiān)聽到delete鍵")
      },
    

實現(xiàn)效果截圖

三、上面兩種實現(xiàn)效果是當input標簽獲取到焦點的時候,才能監(jiān)聽到鍵盤,下面這種是全局監(jiān)聽enter鍵,是把監(jiān)聽事件綁定到document上(登錄頁面常用)

    created: function() {
        var _this = this;
        document.onkeydown = function(e) {
            let key = window.event.keyCode;
            if (key == 13) {
                _this.submit();
            }
        };
    },

    methods: {
        submit: function() {
            alert("監(jiān)聽到enter鍵");
        },
   }
實現(xiàn)效果截圖

這里卿洋
愿喜??

?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • vue.js是什么 是一套構建用戶界面的漸進式框架 vue應用組成 一個 Vue 應用由一個通過new Vue創(chuàng)建...
    多多醬_DuoDuo_閱讀 1,131評論 0 2
  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,555評論 19 139
  • 主要還是自己看的,所有內(nèi)容來自官方文檔。 介紹 Vue.js 是什么 Vue (讀音 /vju?/,類似于 vie...
    Leonzai閱讀 3,538評論 0 25
  • 總結: 鼠標事件 1.click與dbclick事件$ele.click()$ele.click(handler(...
    阿r阿r閱讀 1,720評論 2 10
  • 成長,仿佛就是,越來越不去在乎。 那么多人,兒時的玩伴,一起念書的同學,一起工作的同事,回過頭來,還是一個人,一個...
    素白yan閱讀 237評論 6 1

友情鏈接更多精彩內(nèi)容