您好,登錄后才能下訂單哦!
如何在vue中監(jiān)聽鍵盤事件?針對這個問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
在我們的項(xiàng)目經(jīng)常需要監(jiān)聽一些鍵盤事件來觸發(fā)程序的執(zhí)行,而Vue中允許在監(jiān)聽的時候添加關(guān)鍵修飾符:
<input v-on:keyup.13="submit">
對于一些常用鍵,還提供了按鍵別名:
<input @keyup.enter="submit"> <!-- 縮寫形式 -->
全部的按鍵別名:
.enter
.tab
.delete (捕獲“刪除”和“退格”鍵)
.esc
.space
.up
.down
.left
.right
修飾鍵:
.ctrl
.alt
.shift
.meta
<!-- Alt + C --> <input @keyup.alt.67="clear"> <!-- Ctrl + Click --> <div @click.ctrl="doSomething">Do something</div>
與按鍵別名不同的是,修飾鍵和 keyup 事件一起用時,事件引發(fā)時必須按下正常的按鍵。換一種說法:如果要引發(fā) keyup.ctrl,必須按下 ctrl 時釋放其他的按鍵;單單釋放 ctrl 不會引發(fā)事件。
<!-- 按下Alt + 釋放C觸發(fā) --> <input @keyup.alt.67="clear"> <!-- 按下Alt + 釋放任意鍵觸發(fā) --> <input @keyup.alt="other"> <!-- 按下Ctrl + enter時觸發(fā) --> <input @keydown.ctrl.13="submit">
對于elementUI的input,我們需要在后面加上.native, 因?yàn)閑lementUI對input進(jìn)行了封裝,原生的事件不起作用。
<input v-model="form.name" placeholder="昵稱" @keyup.enter="submit"> <el-input v-model="form.name" placeholder="昵稱" @keyup.enter.native="submit"></el-input>
Vue是一款友好的、多用途且高性能的JavaScript框架,使用vue可以創(chuàng)建可維護(hù)性和可測試性更強(qiáng)的代碼庫,Vue允許可以將一個網(wǎng)頁分割成可復(fù)用的組件,每個組件都包含屬于自己的HTML、CSS、JavaScript,以用來渲染網(wǎng)頁中相應(yīng)的地方,所以越來越多的前端開發(fā)者使用vue。
關(guān)于如何在vue中監(jiān)聽鍵盤事件問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。