2019-05-22

v-on監(jiān)聽(tīng)dom事件

v-on可以接收一個(gè)需要調(diào)用的方法名稱:
監(jiān)聽(tīng)鍵盤(pán)抬起事件,go方法在鍵盤(pán)抬起時(shí)觸發(fā);

<input @keyup="go" v-focus='true'>
go:function(event){
      this.$router.push({name:'Ta'})
},

在內(nèi)聯(lián)語(yǔ)句處理器中,需要訪問(wèn)原始dom事件,需要通過(guò)$event傳入?yún)?shù);

<h1 @keydown.ctrl='clickevent($event)'>
clickevent:function(event){
      console.log(event)
}
//KeyboardEvent {isTrusted: true, key: "Control", code: "ControlLeft", location: 1, ctrlKey: true, …}

在阻止默認(rèn)事件時(shí),雖然event.preventDefault() 或 event.stopPropagation()比較簡(jiǎn)單,但是更好的方法:是在方法中只有純粹的數(shù)據(jù)邏輯,不再處理dom事件。所以新增了事件修飾符;

<a v-on:click.stop="doThis"></a>
.stop            阻止單擊事件繼續(xù)傳播
<form v-on:submit.prevent="onSubmit"></form>
.prevent       提交事件不再加載頁(yè)面
修飾符可以串聯(lián),串聯(lián)修飾符有順序;可以只有修飾符
.capture       事件捕獲模式;現(xiàn)在本層觸發(fā)事件,再向里面觸發(fā)
<div v-on:click.capture="doThis">...</div>
.self             只有當(dāng)前元素觸發(fā),里面的元素不再觸發(fā);
<div v-on:click.self="doThat">...</div>
.passive      等待onScroll滾動(dòng)事件加載完成后才會(huì)觸發(fā)滾動(dòng)事件。默認(rèn)滾動(dòng)事件是立即出發(fā)的;
<div v-on:scroll.passive="onScroll">...</div>

_.passive 修飾符尤其能夠提升移動(dòng)端的性能
該修飾符告訴瀏覽器不會(huì)阻止事件的默認(rèn)行為;不可以和prevent一起用

鍵盤(pán)修飾符
鍵盤(pán)修飾符主要是為了檢查詳細(xì)的按鍵;

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

還可以自定義 按鍵修飾符 :Vue.config.keyCodes.g = 111;

<input @keyup.alt.67="clear">
//同時(shí)按下alt和c鍵
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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

  • ??JavaScript 與 HTML 之間的交互是通過(guò)事件實(shí)現(xiàn)的。 ??事件,就是文檔或?yàn)g覽器窗口中發(fā)生的一些特...
    霜天曉閱讀 3,679評(píng)論 1 11
  • 一、測(cè)試流程 所有測(cè)試的流程大體上是一致的:開(kāi)始測(cè)試前準(zhǔn)備-->需求分析-->測(cè)試設(shè)計(jì)(測(cè)試計(jì)劃,測(cè)試用例)-->...
    唯美的季節(jié)我們依然相愛(ài)閱讀 8,000評(píng)論 0 0
  • 這篇筆記主要包含 Vue 2 不同于 Vue 1 或者特有的內(nèi)容,還有我對(duì)于 Vue 1.0 印象不深的內(nèi)容。關(guān)于...
    云之外閱讀 5,168評(píng)論 0 29
  • 主要還是自己看的,所有內(nèi)容來(lái)自官方文檔。 介紹 Vue.js 是什么 Vue (讀音 /vju?/,類似于 vie...
    Leonzai閱讀 3,536評(píng)論 0 25
  • 封裝:1. 提高代碼的安全性。 2. 提高代碼的復(fù)用性。 3. “高內(nèi)聚”:封裝細(xì)節(jié),便于修改內(nèi)部代碼,提...
    袁小勝閱讀 65評(píng)論 0 0

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