jQuery 1.3.2 - 防止事件触发较低元素的最佳方法?

Ste*_*all 3 html javascript jquery

我有这个(简化):

$(li).click(function{alert("test");});

<li>
   <input>
</li>
Run Code Online (Sandbox Code Playgroud)

li当用户点击input元素时,绑定事件但不触发的最佳方法是什么?

Mat*_*ins 6

尝试在Event对象上使用stopPropagation方法.

$('input').click(function(event) {
    event.stopPropagation();
});
Run Code Online (Sandbox Code Playgroud)

您还可以针对li使用选择器组合的特定儿童(或直接儿童):

$('li > input, li strong, li span').click( ... );
Run Code Online (Sandbox Code Playgroud)