jQuery阻止 toggle方法事件冒泡

写了一个左侧导航的菜单,父菜单元素为li,子节点元素也为ul>li,当给父节点的li绑定click事件执行toggle()函数时,发现点击子节点的li标签也会执行toggle函数。由此造成事件冒泡。

解决方法:

在绑定click事件的函数后添加return false即可解决事件冒泡的问题,代码如下:

  $('.api_left').find('li').live('mouseover',function(){ //父节点li
$(this).css('cursor','pointer');
 }).live('mouseout',function(){
  $(this).css('cursor','');
 }).live('click',function(){
$(this).find('>ul').toggle();
return false; //解决事件冒泡
 });

<div class = "api_left">
<ul>
<li>
<span style="vertical-align:top;">平台介绍</span>
<ul style="display:none;"> <!--子菜单-->
<li><a>平台描述</a></li>
<li><a>平台描述</a></li>
</ul>
</li>

</ul>

</div>

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章