js在父元素上添加点击事件,怎么阻止子元素继承父元素的点击事件

JavaScript019

js在父元素上添加点击事件,怎么阻止子元素继承父元素的点击事件,第1张

因为orange click事件比green click事件先触发,所以后面的事件不能禁止前面的事件触发吧。 所以建议你在orange事件处理函数里判断要不要执行函数体里的语句。 $("#orange").click(function(){ if (/* 你想这样做应该有你的条件吧

js的事件流为 捕获阶段 =>目标触发对象 =>冒泡阶段

只有目标触发对象之后的事件传播可以被阻止,方法为stopPropagation(),IE的为e.cancelBubble = true

也可以用 return false 来阻止事件的继续传播 和 阻止默认事件的触发

比如有3个div 一个包裹一个 点击最里面那个 会触发click事件

外面的DIV 一样会触发click事件

最外面的一样会触发click事件

如果你3个div 监听 你就会发现。。。

事件的触发顺序自内向外,这就是事件冒泡。以下为阻止冒泡

var oEvent = ev || event

oEvent.cancelBubble = true

oEvent.stopPropagation()

望采纳