0

我有一个奇怪的问题,其中我有一个带有一些 LI 元素的 UL。我已将 dblclick() 事件绑定到 UL 和 LI,当我 dblclick LI 元素时,LI 事件和 UL 事件被触发..有没有办法避免这种情况?

这是我的代码:

    $("ul").dblclick(function () {
        alert("ul clicked");
    });

    $("li").dblclick(function () {
        alert("li clicked");
    });
4

1 回答 1

3

dblclick事件会在 DOM 树中冒泡,并且还会通知祖先元素。为了防止事件冒泡,您需要停止事件的传播

$("li").dblclick(function (e) {
    alert("li clicked");
    e.stopPropagation();
});

示例:http: //jsfiddle.net/HkUQ4/

于 2012-01-06T00:43:01.493 回答