覆盖父元素单击子元素中的事件

时间:2011-06-24 23:41:30

标签: jquery

我有以下HTML:

<table>
    <tr>
        <td><div>test</div></td>
        <td>Some Text</td>
    </tr>
</table>

使用JQuery,我有一些代码在用户点击TR元素时运行。效果很好。

然而,当有人点击TD元素内的DIV时,我只想要DIV的“click”事件,而不是父母的TR“click”事件。

我该怎么做?

提前全部谢谢!

4 个答案:

答案 0 :(得分:8)

使用stopPropagation:

$(function() {
    $('tr').bind('click', function (e) {
        console.log('tr');
    });
    $('div').bind('click', function(e) {
        e.stopPropagation();
       console.log('div');
   });

});

jsfiddle

答案 1 :(得分:3)

event.stopImmediatePropagation()为我工作:)

答案 2 :(得分:2)

查看jQuery的event.stopPropagation()

http://api.jquery.com/event.stopPropagation/

答案 3 :(得分:1)

evt.stopPropagation处理程序中使用click

相关问题