javascript - 有没有办法为特定的命名空间停止传播?

标签 javascript jquery

假设我们像这样创建一个事件监听器:

$(element).on("click.namespace",function(e){alert('hi')});

现在我在一个 div 上有另一个事件,我想在其中停止第一个事件,保留其他点击事件:

$(element).find('div').on("click",function(e){
    e.stopPropagation(); //I want it to stop only the previous function
});

有没有办法只针对这个特定的命名空间停止传播?允许所有其他功能正常运行?

它必须与 namespace 相关,因为我要停止的事件在外部库中

最佳答案

添加为类,然后检查。

$(element).on("click", function(evt){
   if ($(this).hasClass('namespace')) {
       evt.stopPropagation();
   }
   alert('hi');
});

关于javascript - 有没有办法为特定的命名空间停止传播?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21902911/

相关文章:

javascript - 直接访问 javascript 属性与在开发工具中读取对象时相比,访问 javascript 属性会产生不同的结果

javascript - jQuery 在悬停错误上向上/向下滑动

javascript - JQuery CSS 菜单问题

jquery - 需要为曲线填充 Svg 动画

javascript - 文件选择上的 Ajax 文件上传不起作用

jquery - 使用 jQuery 循环/递增 id 从多个元素中删除类

javascript - 在html表格上正确添加水平滚动条

javascript - 内容处理 : DIV vs. 全屏

javascript - 获取使用 :before and :after 合成的元素的实际高度

javascript - 如果更改尚未保存,则在离开网页之前警告用户