假设我们像这样创建一个事件监听器:
$(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
});
有没有办法只停止这个特定命名空间的传播?允许所有其他功能正常运行?
它必须与名称空间相关,因为我要停止的事件是在外部库中
答案 0 :(得分:0)
是的,你可以使用not运算符
$(element+":not(tags to be avoided)").on("click.namespace",function(){
alert('hi')
});
答案 1 :(得分:0)
作为课程添加,然后检查。
$(element).on("click", function(evt){
if ($(this).hasClass('namespace')) {
evt.stopPropagation();
}
alert('hi');
});