慕粉3146726
2016-04-20 09:30
想知道,事件冒泡的时候,是所有的事件都会执行吗?比如一个点击click事件发生,父包裹层也有点击事件会执行吗?假如还有mousedown呢?
刚才已经尝试 如果父类有同类事件可以冒泡执行 但是如果触发事件与父类事件不同则不会冒泡触发
<div onclick="alert(123)">
<button type="button" class="btn btn-default" onmousedown="alert(1)">button</button>
</div>
----上面这段点击button只会弹出1
<div onclick="alert(123)">
<button type="button" class="btn btn-default" onclick="alert(1)">button</button>
</div>
----上面这段因为父类与子类为同一类型事件所以点击button会弹出1 之后弹出123
是的
事件的传播是可以阻止的:
• 在W3c中,使用stopPropagation()方法
• 在IE下设置cancelBubble = true;
在捕获的过程中stopPropagation();后,后面的冒泡过程也不会发生了~
阻止事件的默认行为,例如click <a>后的跳转~
• 在W3c中,使用preventDefault()方法;
• 在IE下设置window.event.returnValue = false;
参考自:http://www.jb51.net/article/42492.htm
DOM事件探秘
99545 学习 · 1197 问题
相似问题