使用cancelBubble竟然可以阻止所有浏览器的冒泡?
2015-05-18 13:24 zdwzdwzdw 阅读(322) 评论(0) 编辑 收藏 举报以前一直以为cancelBubble是IE8及以下的专属,今天做一个测试的时候意外发现了所有浏览器都支持,便提出来希望有哪位解释下。
1.使用原生js在FF下和chrome下两种方法都可以阻止冒泡
document.getElementById("wq").addEventListener("click",function(e){ console.log('wq'); },false); document.getElementById("we").addEventListener("click",function(e){ console.log(e); // e.stopPropagation(); e.cancelBubble = true; },false);
2.使用jquery两种方法也都可以阻止冒泡
<div id="wq"> <span id="we">click</span> </div> <script type="text/javascript" src="jquery-1.11.0.min.js"></script> <script type="text/javascript"> $("#wq").on("click",function(){ console.log("wq"); }); $("#we").on("click",function(e){ console.log(e); // e.stopPropagation(); e.originalEvent.cancelBubble = true; }) </script>