Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Menghentikan Penyebaran Acara dalam jQuery untuk Menghalang Pengendali Acara Induk daripada Membakar?

Bagaimana untuk Menghentikan Penyebaran Acara dalam jQuery untuk Menghalang Pengendali Acara Induk daripada Membakar?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-12 11:46:01843semak imbas

How to Stop Event Propagation in jQuery to Prevent Parent Event Handlers from Firing?

Menghalang Penyebaran Pengendali Acara Induk

Pertimbangkan struktur pokok div, di mana mengklik pada div induk menjadikan anak-anaknya tidak kelihatan. Walau bagaimanapun, mengklik pada div kanak-kanak juga mencetuskan acara klik ibu bapa. Untuk menangani isu ini, kami memerlukan satu cara untuk menghalang penyebaran acara ke atas pokok.

Satu pendekatan berkesan menggunakan jQuery ialah menambah pengendali klik pada elemen anak yang secara khusus menghentikan penyebaran acara:

function handler(event) {
    event.stopPropagation();
    // additional code here
}

$('#a').add('#b').click(handler);

Dalam kod ini, kaedah stopPropagation() digunakan untuk menghalang acara daripada menggelegak ke div induk. Apabila klik berlaku pada div '#b', fungsi pengendali digunakan, menghalang acara daripada mencapai div '#a'. Akibatnya, peristiwa klik ibu bapa tidak dicetuskan, mengekalkan keterlihatan div '#c'.

Atas ialah kandungan terperinci Bagaimana untuk Menghentikan Penyebaran Acara dalam jQuery untuk Menghalang Pengendali Acara Induk daripada Membakar?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn