Vue事件修飾符(二).prevent .passive

簡介

????????Vue提供了事件綁定的語法糖旺垒,我們在標簽中可直接使用形如v-on:click,@click,@focus的形式綁定事件監(jiān)聽器延欠,并且可以使用修飾符對事件進行option設置涛酗。本次解釋下prevent 與passive的修飾符铡原。prevent?是攔截默認事件偷厦,passive是不攔截默認事件。

prevent

? ? ? ? 某些標簽擁有自身的默認事件燕刻,如a[href="#"]只泼,button[type="submit"] 這種標簽在冒泡結束后會開始執(zhí)行默認事件。注意默認事件雖然是冒泡后開始卵洗,但不會因為stop阻止事件傳遞而停止请唱。

圖1.默認事件與事件傳遞

? ? ? ? 如上圖1,我在第三次捕獲后終止事件傳遞过蹂,但是最后輸出了1 2 3 x十绑。

圖2.攔截默認事件

? ? ? ? 如上圖2,我們在a標簽上的click加個prevent的修飾符酷勺,最后輸出 1 2 3 4 4 3 2 1本橙。默認的href里的事件沒有觸發(fā)。

passive

? ? ? ? passive這個修飾符會執(zhí)行默認方法脆诉。你們可能會問甚亭,明明默認執(zhí)行為什么會設置這樣一個修飾符。這就要說一下這個修飾符的本意了击胜。

????????【瀏覽器只有等內核線程執(zhí)行到事件監(jiān)聽器對應的JavaScript代碼時亏狰,才能知道內部是否會調用preventDefault函數(shù)來阻止事件的默認行為,所以瀏覽器本身是沒有辦法對這種場景進行優(yōu)化的偶摔。這種場景下暇唾,用戶的手勢事件無法快速產(chǎn)生,會導致頁面無法快速執(zhí)行滑動邏輯啰挪,從而讓用戶感覺到頁面卡頓信不。】

? ? ? ? 通俗點說就是每次事件產(chǎn)生亡呵,瀏覽器都會去查詢一下是否有preventDefault阻止該次事件的默認動作抽活。我們加上passive就是為了告訴瀏覽器,不用查詢了锰什,我們沒用preventDefault阻止默認動作下硕。

? ? ? ? 這里一般用在滾動監(jiān)聽,@scoll汁胆,@touchmove 梭姓。因為滾動監(jiān)聽過程中,移動每個像素都會產(chǎn)生一次事件嫩码,每次都使用內核線程查詢prevent會使滑動卡頓誉尖。我們通過passive將內核線程查詢跳過,可以大大提升滑動的流暢度铸题。

注:passive和prevent沖突铡恕,不能同時綁定在一個監(jiān)聽器上琢感。

前端豆知識,很小卻有用

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末探熔,一起剝皮案震驚了整個濱河市驹针,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌诀艰,老刑警劉巖柬甥,帶你破解...
    沈念sama閱讀 216,692評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異其垄,居然都是意外死亡苛蒲,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,482評論 3 392
  • 文/潘曉璐 我一進店門绿满,熙熙樓的掌柜王于貴愁眉苦臉地迎上來撤防,“玉大人,你說我怎么就攤上這事棒口。” “怎么了辜膝?”我有些...
    開封第一講書人閱讀 162,995評論 0 353
  • 文/不壞的土叔 我叫張陵无牵,是天一觀的道長。 經(jīng)常有香客問我厂抖,道長茎毁,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,223評論 1 292
  • 正文 為了忘掉前任忱辅,我火速辦了婚禮七蜘,結果婚禮上,老公的妹妹穿的比我還像新娘墙懂。我一直安慰自己橡卤,他們只是感情好,可當我...
    茶點故事閱讀 67,245評論 6 388
  • 文/花漫 我一把揭開白布损搬。 她就那樣靜靜地躺著碧库,像睡著了一般。 火紅的嫁衣襯著肌膚如雪巧勤。 梳的紋絲不亂的頭發(fā)上嵌灰,一...
    開封第一講書人閱讀 51,208評論 1 299
  • 那天,我揣著相機與錄音颅悉,去河邊找鬼沽瞭。 笑死,一個胖子當著我的面吹牛剩瓶,可吹牛的內容都是我干的驹溃。 我是一名探鬼主播城丧,決...
    沈念sama閱讀 40,091評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼吠架!你這毒婦竟也來了芙贫?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 38,929評論 0 274
  • 序言:老撾萬榮一對情侶失蹤傍药,失蹤者是張志新(化名)和其女友劉穎磺平,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體拐辽,經(jīng)...
    沈念sama閱讀 45,346評論 1 311
  • 正文 獨居荒郊野嶺守林人離奇死亡拣挪,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,570評論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了俱诸。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片菠劝。...
    茶點故事閱讀 39,739評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖睁搭,靈堂內的尸體忽然破棺而出赶诊,到底是詐尸還是另有隱情,我是刑警寧澤园骆,帶...
    沈念sama閱讀 35,437評論 5 344
  • 正文 年R本政府宣布舔痪,位于F島的核電站,受9級特大地震影響锌唾,放射性物質發(fā)生泄漏锄码。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,037評論 3 326
  • 文/蒙蒙 一晌涕、第九天 我趴在偏房一處隱蔽的房頂上張望滋捶。 院中可真熱鬧,春花似錦余黎、人聲如沸重窟。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,677評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽亲族。三九已至,卻和暖如春可缚,著一層夾襖步出監(jiān)牢的瞬間霎迫,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,833評論 1 269
  • 我被黑心中介騙來泰國打工帘靡, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留知给,地道東北人。 一個月前我還...
    沈念sama閱讀 47,760評論 2 369
  • 正文 我出身青樓,卻偏偏與公主長得像涩赢,于是被迫代替她去往敵國和親戈次。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,647評論 2 354

推薦閱讀更多精彩內容

  • 主要還是自己看的筒扒,所有內容來自官方文檔怯邪。 介紹 Vue.js 是什么 Vue (讀音 /vju?/,類似于 vie...
    Leonzai閱讀 3,348評論 0 25
  • 簡介 在原生DOM綁定事件的年代花墩,我們經(jīng)常會使用到e.preventDefault() 或 e.stopPropa...
    anOnion閱讀 1,572評論 0 6
  • vue概述 在官方文檔中悬秉,有一句話對Vue的定位說的很明確:Vue.js 的核心是一個允許采用簡潔的模板語法來聲明...
    li4065閱讀 7,213評論 0 25
  • VUE Vue :數(shù)據(jù)驅動的M V Vm框架 m :model(后臺提供數(shù)據(jù)),v :view(頁面)冰蘑,vM(模板...
    wudongyu閱讀 5,397評論 0 11
  • 1. Vue 實例 1.1 創(chuàng)建一個Vue實例 一個 Vue 應用由一個通過 new Vue 創(chuàng)建的根 Vue 實...
    王童孟閱讀 1,019評論 0 2