jquerylive方法:can';t阻止事件在DOM中冒泡
我不确定,但它看起来像一只虫子 以下是样本: 也许我做错了什么? 有什么解决办法吗 谢谢;) 你读过报纸了吗 由于jquerylive方法:can';t阻止事件在DOM中冒泡,jquery,Jquery,我不确定,但它看起来像一只虫子 以下是样本: 也许我做错了什么? 有什么解决办法吗 谢谢;) 你读过报纸了吗 由于.live()方法在事件传播到文档顶部后处理事件,因此无法停止实时事件的传播 将事件处理程序绑定到文档根目录。您甚至可以按照日志的顺序看到这一点: this should't be triggered clicked div中的事件处理程序在a元素的活动处理程序之前执行 如果必须使用.live(),则解决此问题的唯一方法是使用.live()将事件处理程序的事件绑定到div: 如
.live()
方法在事件传播到文档顶部后处理事件,因此无法停止实时事件的传播
将事件处理程序绑定到文档根目录。您甚至可以按照日志的顺序看到这一点:
this should't be triggered
clicked
div
中的事件处理程序在a
元素的活动处理程序之前执行
如果必须使用.live()
,则解决此问题的唯一方法是使用.live()
将事件处理程序的事件绑定到div
:
如果您不必使用.live()
,则只需使用or以正常方式将处理程序绑定到a
元素。您阅读了吗
由于.live()
方法在事件传播到文档顶部后处理事件,因此无法停止实时事件的传播
将事件处理程序绑定到文档根目录。您甚至可以按照日志的顺序看到这一点:
this should't be triggered
clicked
div
中的事件处理程序在a
元素的活动处理程序之前执行
如果必须使用.live()
,则解决此问题的唯一方法是使用.live()
将事件处理程序的事件绑定到div
:
如果不必使用
.live()
,则只需使用or以正常方式将处理程序绑定到a
元素。使用bind
而不是live
,live必须满足动态添加的元素,这样事件冒泡就无法停止
$('div').click(function(){
alert('will not be triggered');
});
$('a').bind('click',function(e){
console.log('clicked');
e.stopPropagation();
alert("first");
alert("second");
});
这里是小提琴使用
bind
而不是live
,live必须满足动态添加的元素,因此事件冒泡无法停止
$('div').click(function(){
alert('will not be triggered');
});
$('a').bind('click',function(e){
console.log('clicked');
e.stopPropagation();
alert("first");
alert("second");
});
这是小提琴谢谢,我没注意到那边的告示。我想我必须创建自定义函数。为了避免在多个地方重新绑定。谢谢。我没有注意到那边的通知。我想我必须创建自定义函数。避免在多个位置重新绑定。