javascript - 是否可以只在顶部元素上触发 jQuery.click?

标签 javascript jquery

我正在尝试创建一个网站,用户可以在其中点击任何元素来编辑它的 CSS。我使用以下代码将点击功能添加到所有 <li> , <div><ul> .

$('li,div,ul').click(function () {
    alert(this.id);
});

问题是如果我点击 <li>元素,然后我会收到该元素及其下方任何元素的警报。 (所有容器)。

是否可以在点击时只触发顶部元素?

最佳答案

您想停止事件传播,您可以在 jQuery 中通过调用 stopPropagation 来完成此操作事件对象上的方法。

$('li,div,ul').click(function (e) {  
    e.stopPropagation();
    alert(this.id); 
});

关于javascript - 是否可以只在顶部元素上触发 jQuery.click?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/584738/

相关文章:

jquery - 使用 .next() 选择具有特定类的 div

javascript - angular-ivh-treeview - 如何在叶节点选择上注册回调

javascript - Flask_WTF csrf装饰器属性错误

jQuery Ajax 成功/错误回调未在 IE 中触发

javascript - Modal仅在ajax请求后触发

javascript - body垂直滚动条到达后调用函数

javascript - 获取jquery/css/javascript中同类元素的最小宽度

javascript - 如何通过 JavaScript 中的属性获取对象的索引?

javascript - 在按下或更改事件时,触发 Ajax 以在 jQuery 中发送数据

javascript - noUiSlider 透明度