首頁 > web前端 > js教程 > 如何防止父事件處理程序在 jQuery 中透過子元素點選執行?

如何防止父事件處理程序在 jQuery 中透過子元素點選執行?

Barbara Streisand
發布: 2024-11-23 22:55:10
原創
767 人瀏覽過

How to Prevent Parent Event Handlers from Executing with Child Element Clicks in jQuery?

防止執行父級事件處理程序

在給定的HTML 結構中,按一下任何div 元素都會觸發其父級div的單擊處理程序,導致意外行為。為了防止這種情況,我們可以使用 jQuery 來停用點擊事件傳播。

<div>
登入後複製
function func() {
   if ($(childId).hasClass("visible")){
    $(childId).removeClass("visible");
    $(childId).addClass("invisible");
}
登入後複製

要停用點擊事件傳播,請在呼叫stopPropagation() 方法的子元素中加入事件處理程序:

function handler(event) {
    event.stopPropagation();
    // Custom code to execute for the child's click event
}

$('#a').add('#b').click(handler);
登入後複製

透過阻止事件傳播,子元素('#b')的點擊將不再觸發父元素的點擊處理程序('#a')。同樣,對後代元素(“#c”)的點擊不會傳播到兩個父元素(“#b”和“#a”)。

以上是如何防止父事件處理程序在 jQuery 中透過子元素點選執行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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