前端阻止事件冒泡和默认事件

xiaoxiao2021-02-28  109

首先了解什么是事件冒泡什么是事件捕获

注:图片来自博客http://www.cnblogs.com/Chen-XiaoJun/p/6210987.html

实例代码如下

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>事件流</title> <style type="text/css"> #content{width: 150px;height: 150px;background-color: red;} #btn{width: 80px;height: 80px;background-color: green;} </style> </head> <body> <div id="content">content <div id="btn">button</div> </div> <script type="text/javascript"> var content = document.getElementById("content"); var btn = document.getElementById('btn'); btn.onclick = function(e){ alert("btn"); // 阻止事件冒泡 var ev=e?e:window.event;//兼容IE写法,window.event获取IE时间源 window.event?window.event.cancelBubble=true:e.stopPropagation(); }; content.onclick = function(){ alert("content"); }; document.onclick = function(){ alert("document"); }; document.oncontextmenu = function(e){ // alert("document"); // 阻止默认事件 if(e.preventDefault){ e.preventDefault(); }else{ window.event.returnValue = false; return false; } } // 事件冒泡btn——>content——>document </script> </body> </html>

转载请注明原文地址: https://www.6miu.com/read-71275.html

最新回复(0)