我有这个结构
<div>
<ul>
<li>...</li>
<li....
...
</ul>
</div>
在jQuery中
$(div).click(function(){...});
$(li).click(function(){....});
现在我的问题是当我点击 li 时,div click 事件也会触发。单击 li 时如何设置为仅触发 li click 事件。
我有这个结构
<div>
<ul>
<li>...</li>
<li....
...
</ul>
</div>
在jQuery中
$(div).click(function(){...});
$(li).click(function(){....});
现在我的问题是当我点击 li 时,div click 事件也会触发。单击 li 时如何设置为仅触发 li click 事件。
$(div).click(function(){...});
$(li).click(function(ev){ ev.stopPropagation(); /* other code here */ });
请执行下列操作:
$(li).click(function(e) {e.stopPropagation()...})
从li
s 事件返回 false,这将阻止它在 DOM 树中冒泡。
更新,并且作为好的措施也是event.preventDefault()
如此,event
作为传递给处理函数的第一个参数。
您可以使用event.stopPropagation() 之类的
$(li).click(function(event){ event.stopPropagation() });
这将有助于
$(li).click(function(event) {
event.stopPropagation()
//you code here
})