$(function(){ $('#div1').click(function(){ alert($(this).attr('id')); }); $('#div2').click(function(){ alert($(this).attr('id')); }); $('#div3').click(function(ev){ alert($(this).attr('id')); ev.stopPropagation(); }) })
再看看html代码:
<div id="div1" style="background:red;"> <div id="div2" style="background:blue;"> <div id="div3" style="background:green;"></div> </div> </div>
三个div套在一起,这个时候,如果给其中的任何一个加点击事件,就会出现冒泡的现象,它从DOM最低层逐层遍历树,然后附加相应事件,这里用ev.stopPropagation()去阴止冒泡,就可以达到想要的效果了!