Rumah >hujung hadapan web >tutorial js >Penugasan acara dan mencegah menggelegak menghalang acara elemen induknya daripada triggering_jquery

Penugasan acara dan mencegah menggelegak menghalang acara elemen induknya daripada triggering_jquery

WBOY
WBOYasal
2016-05-16 16:38:031443semak imbas

Bercakap secara ringkas tentang delegasi acara dan mencegah menggelegak

html:

<ul class="clearfix" data-type="cityPick"> 
<li class="active_sort_opts" data-id="0">全部</li> 
<li data-id="88">纽约</li> 
<li data-id="119">洛杉矶</li> 
<li data-id="138">拉斯维加斯</li> 
<li data-id="84">夏威夷</li> 
<li data-id="120">旧金山</li> 
<li data-id="105">奥兰多</li> 
<li data-id="118">西雅图</li> 
</ul>

js:

$("ul[data-type='cityPick']").on('click',function(){ 
alert("父元素ul被点击"); 
}); 
$("ul[data-type='cityPick']").on('click','li',function(){ 
alert("子元素li被点击"); 
});

Apabila mengklik pada elemen li tertentu, didapati peristiwa ul juga dicetuskan, yang mana kita tidak mahu lihat.

Penyelesaian:

$("ul[data-type='cityPick']").on('click',function(){ 
alert("父元素ul被点击"); 
}); 
$("ul[data-type='cityPick']").on('click','li',function(e){ 
e.stopPropagation();//阻止冒泡 
alert("子元素li被点击"); 
});

Tambahkan sahaja ayat untuk berhenti menggelegak.

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