Rumah > Soal Jawab > teks badan
Ada dua peristiwa klik P besar mengandungi p kecil Jika anda klik pada p kecil, yang besar juga akan dicetuskan.
Seperti yang ditunjukkan dalam rajah, jika anda klik pada klik di dalam p kecil, p besar juga akan dicetuskan ia?
Sekarang
给我你的怀抱2017-05-27 17:46:35
Mencetuskan jenis acara tertentu pada objek (seperti mengklik onclick
事件),如果此对象定义了此事件的处理程序,那么此事件就会调用这个处理程序,如果没有定义此事件处理程序或者事件返回true
,那么这个事件会向这个对象的父级对象传播,从里到外,直至它被处理(父级对象所有同类事件都将被激活),或者它到达了对象层次的最顶层,即document
对象(有些浏览器是window
) dipanggil acara menggelegak.
//阻止事件冒泡函数
function stopBubble(e)
{
if (e && e.stopPropagation)
e.stopPropagation()
else
window.event.cancelBubble=true
}
迷茫2017-05-27 17:46:35
ialah acara menggelegak (tangkap) JS
Penyelesaian seperti ini agak mudah
$('.p1').on('click', function(event) {
event.preventDefault();
if ($(event.target).is('.p2')) {
alert('click 2')
}else{
alert('click 1')
}
});
PHP中文网2017-05-27 17:46:35
js menggelegak, batalkan sahaja menggelegak
Gunakan delegasi acara dan masalah ini tidak akan berlaku
为情所困2017-05-27 17:46:35
Datang kepada saya jika anda tidak faham selepas membaca dua artikel ini:
http://javascript.info/bubbli...
https://stackoverflow.com/que...
阿神2017-05-27 17:46:35
Saya memikirkan dua penyelesaian:
1. Elakkan kejadian daripada menggelegak.
Peristiwa menggelegak dilaksanakan langkah demi langkah dari elemen anak dalam ke elemen induk luar Apabila melaksanakan acara klik elemen anak, acara menyekat menggelegak perlu dipanggil, supaya acara itu tidak boleh dihantar ke lapisan atas ke. laksanakan acara lapisan atas.
2 Laksanakan acara berbeza berdasarkan elemen yang menyebabkan klik.
Apabila elemen yang diklik disebabkan oleh elemen kanak-kanak, peristiwa A dilaksanakan Jika ia bukan elemen kanak-kanak, peristiwa B dilaksanakan.
淡淡烟草味2017-05-27 17:46:35
Hanya berhenti menggelegak untuk maklumat lanjut tentang kejadian itu, sila lihat di sini /a/11...
曾经蜡笔没有小新2017-05-27 17:46:35
Mengikut amalan biasa, ia tidak akan dicetuskan seperti ini Saya benar-benar ingin tahu pemilih yang anda gunakan untuk mengikat acara klik Adalah lebih baik jika anda menyiarkan kod klik anda dan kod html p
anda