Vue中常用的鼠標移入移出事件詳解
Vue中常用的鼠標移入移出事件
Vue中常用的鼠標移入移出事件有兩種:@mouseenter
和@mouseleave
。
@mouseenter
事件會在鼠標移入元素時觸發(fā),而@mouseleave
事件會在鼠標移出元素時觸發(fā)。這兩個事件可以用于實現一些交互效果,例如鼠標移入時顯示某些內容,鼠標移出時隱藏。
在Vue模板中,可以使用這兩個事件來綁定方法,例如:
<template> <div @mouseenter="handleMouseEnter" @mouseleave="handleMouseLeave">鼠標移入移出</div> </template>
在Vue組件的methods
中定義對應的方法:
export default { methods: { handleMouseEnter() { console.log('鼠標移入'); }, handleMouseLeave() { console.log('鼠標移出'); } } }
這樣當鼠標移入或移出該元素時,對應的方法就會被調用。
@mouseleave事件來代替mouseout事件
mouseout
是JavaScript原生的鼠標移出事件,與Vue中的@mouseleave
事件類似,但有一些細微的差別。
mouseout
事件會在鼠標移出元素時觸發(fā),但如果鼠標移入該元素的子元素,也會觸發(fā)一次mouseout
事件。這樣可能會導致一些意外的行為,例如當鼠標從元素上移入其子元素時,可能會觸發(fā)元素的mouseout
事件,從而導致一些不必要的操作。
因此在Vue中,建議使用
@mouseleave
事件來代替mouseout
事件。
@mouseenter事件來代替mouseover事件
mouseover
是JavaScript原生的鼠標移入事件,與Vue中的@mouseenter
事件類似,但有一些細微的差別。
mouseover
事件會在鼠標移入元素時觸發(fā),但如果鼠標移入該元素的子元素,不會觸發(fā)一次mouseover
事件。這樣可以避免一些意外的行為,例如當鼠標從元素的子元素上移出時,不會觸發(fā)元素的mouseover
事件,從而避免一些不必要的操作。
因此在Vue中,建議使用
@mouseenter
事件來代替mouseover
事件。
附:兩對鼠標事件的區(qū)別
其中,mouseover觸發(fā)優(yōu)先級高于mouseenter,mouseout觸發(fā)優(yōu)先級高于mouseleave
1、mouseover 和 mouseout
不論鼠標指針穿過被選元素或其子元素,都會觸發(fā) mouseover
不論鼠標指針離開被選元素還是任何子元素,都會觸發(fā) mouseout 事件。
是根據鼠標事件的target進行觸發(fā)的,是一種精確觸發(fā)。當為某一組件(如div)設置這兩個事件時,當事件的target是該組件時,就會觸發(fā)mouseover,但是當鼠標劃到該組件的子組件上時,因為target改變了,所以就觸發(fā)了 mouseout 事件,這往往就會造成頁面元素的閃爍,反復觸發(fā)移入移出事件。
2、mouseenter 和 mouseleave
只有在鼠標指針從元素外穿入被選元素(到元素內)時,才會觸發(fā) mouseenter 事件。
只有在鼠標指針從元素內穿出被選元素(到元素外)時,才會觸發(fā) mouseleave 事件。
mouseenter 和 mouseleave是根據組件在頁面的范圍(坐標)進行觸發(fā)的。不管組件中是否有子組件,只要鼠標進入到組件的范圍內,就可以觸發(fā)mouseenter事件,離開范圍,則觸發(fā)mouseleave事件。
總結
到此這篇關于Vue中常用的鼠標移入移出事件的文章就介紹到這了,更多相關Vue鼠標移入移出事件內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
在Vue3中實現四種全局狀態(tài)數據的統(tǒng)一管理的方法
在開發(fā)中,通常遇到四種全局狀態(tài)數據:異步數據、同步數據,傳統(tǒng)的Vue3使用不同機制處理這些數據,而Zova框架通過Model機制來統(tǒng)一管理,簡化了數據處理流程,提高了代碼的可維護性,本文介紹在Vue3中實現四種全局狀態(tài)數據的統(tǒng)一管理的方法,感興趣的朋友一起看看吧2024-10-10詳解vue-cil和webpack中本地靜態(tài)圖片的路徑問題解決方案
這篇文章主要介紹了詳解vue-cil和webpack中本地靜態(tài)圖片的路徑問題解決方案,非常具有實用價值,需要的朋友可以參考下2017-09-09解析vue?3.0?使用axios庫發(fā)起?post?get?的配置過程
get post 請求開發(fā)中最普通最常見的請求方式但是在vue中如何實現呢 這里記錄一下配置過程,對vue?使用axios發(fā)起?post?get配置過程感興趣的朋友一起看看吧2022-05-05Vue中的函數同步執(zhí)行導致的數據獲取失敗問題處理辦法
Vue中的mount中有兩個函數,第一個函數執(zhí)行完后給data中的userInfo賦值,但是第二個函數獲取userInfo時是空值,這種情況可能是因為第二個函數在獲取 userInfo 時發(fā)生在第一個函數執(zhí)行完之前,所以本文給大家介紹了Vue中的函數同步執(zhí)行導致的數據獲取失敗問題處理辦法2024-08-08vue實現錄音并轉文字功能包括PC端web手機端web(實現過程)
vue實現錄音并轉文字功能,包括PC端,手機端和企業(yè)微信自建應用端,本文通過實例代碼介紹vue實現錄音并轉文字功能包括PC端web手機端web,感興趣的朋友跟隨小編一起看看吧2024-08-08