是否有可能只在顶部元素上使用jQuery.click触发器?

6 javascript jquery

我正在尝试创建一个网站,用户可以点击任何元素来编辑它的CSS.我使用以下命令将click函数添加到所有lis,div和uls.

$('li,div,ul').click(function () {  

alert(this.id); 

});
Run Code Online (Sandbox Code Playgroud)

问题是如果我点击一个li元素,那么我会得到它的警报,以及它下面的任何元素.(所有容器).

单击时是否可以仅触发顶部元素?

Luc*_*eis 17

您想要停止事件传播,您可以通过在事件对象上调用stopPropagation方法在jQuery中执行此操作.

$('li,div,ul').click(function (e) {  
    e.stopPropagation();
    alert(this.id); 
});
Run Code Online (Sandbox Code Playgroud)