首頁 > web前端 > css教學 > 如何防止帶有子元素的絕對定位 div 上過早發生「onmouseout」事件?

如何防止帶有子元素的絕對定位 div 上過早發生「onmouseout」事件?

Barbara Streisand
發布: 2024-12-02 16:46:12
原創
1028 人瀏覽過

How Can I Prevent Premature `onmouseout` Events on Absolutely Positioned Divs with Child Elements?

將鼠標懸停在Absolute Div 的子元素上時防止發生Mouseout 事件

問題:

將鼠標懸停在一個子元素上時絕對定位的div,div 的onmouseout 事件過早觸發。發生這種情況是因為事件冒泡,子元素事件傳播到其父元素。

解決方案:不使用 jQuery

為了防止懸停子元素時觸發 onmouseout 事件,請改用 onmouseleave 事件。以下是範例:

<div class="outer" onmouseleave="yourFunction()">
    <div class="inner">
    </div>
</div>
登入後複製

解決方案:使用jQuery

jQuery 提供mouseleave() 事件,它完成相同的功能:

$(".outer").mouseleave(function(){
    //your code here
});
登入後複製

怎麼樣有效:

onmouseleave 事件僅在滑鼠離開指定元素時觸發。透過在父 div 上使用此事件,可以確保只有當滑鼠完全退出 div 時才會觸發 mouseout 事件,即使滑鼠懸停在子元素上也是如此。

以上是如何防止帶有子元素的絕對定位 div 上過早發生「onmouseout」事件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板