Menghalang Peristiwa Klik Anchor Kanak-kanak daripada Mencetuskan Acara Klik Ibu Bapa
Seperti yang ditunjukkan oleh kod anda, apabila elemen penambat anak diklik dalam div induk dengan acara onclick, kedua-dua peristiwa itu berlaku. Untuk menyelesaikan isu ini dan menghalang acara klik induk daripada dilaksanakan, anda mempunyai dua pilihan:
Pilihan 1: Semak Asal Acara
Dengan memeriksa objek eventargs yang diluluskan oleh jQuery , anda boleh menentukan elemen yang memulakan klik:
$("#clickable").click(function(e) { if($(e.target).is("div")) { window.location = url; return true; } });
Jika elemen penghantar bukan div itu sendiri, pengendali onclick div tidak akan dicetuskan.
Pilihan 2: Hentikan Acara Bubbling
Sebagai alternatif, anda boleh menghalang acara klik daripada menggelegak kepada induk dengan menggunakan kaedah stopPropagation() pada sauh anak:
$("#clickable a").click(function(e) { // Custom anchor handler e.stopPropagation(); });
Kaedah ini menghalang acara daripada disebarkan ke div induk, memastikan bahawa hanya acara klik sauh dihidupkan.
Atas ialah kandungan terperinci Bagaimana untuk Menghalang Klik Sauh Kanak-kanak daripada Mencetuskan Peristiwa Klik Ibu Bapa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!