HTML如何阻止事件冒泡?求源码分析

HTML如何阻止事件冒泡?求源码分析... HTML如何阻止事件冒泡?求源码分析 展开
 我来答
落允玦E9
2017-10-12 · 超过30用户采纳过TA的回答
知道答主
回答量:136
采纳率:88%
帮助的人:21.8万
展开全部

原以为span不同于input,事件冒泡会被父级标签吞噬,写了个测试事件冒泡的Demo,发现并不是想得那样。另外:event.stopPropagation()以及event.stopImmediatePropagation()并不能阻止span冒泡到a标签中,而简单粗暴的return false却可以。

 1<!DOCTYPE html>
 2 <html>
 3 <head>
 4     <title>Bubbling</title>
 5     <style type="text/css">
 6         * {
 7             font-size:30px;
 8         }
 9         div {
10             border: 1px blue solid;
11         }
12         span {
13             border: 1px blue solid;
14         }
15     </style>
16     <script type="text/javascript">
17         function setforeColor(sender) {
18             sender.style.color = "red";
19         }
20 
21         function setbgColor(sender) {
22             sender.style.background = "green";
23             return false;
24         }
25     </script>
26 </head>
27 <body>
28     <div>
29         <span onclick="setforeColor(this)">span tag</span> in div
30     </div>
31     <br>
32     <div>
33         <input type="button" value="Button" onclick="setforeColor(this)"/> in div
34     </div>
35     <br>
36     <a href="https://www.baidu.com" style="text-decoration:none;display:block;">
37         <span onclick="setforeColor(this);return false">span tag</span> in anchor
38     </a>
39     <br>
40     <a href="https://www.baidu.com" style="text-decoration:none;display:block;">
41         <span onclick="setbgColor(this)">span tag</span> in anchor
42     </a>
43 </body>
44 </html>
墨香灬无痕
2017-10-12 · TA获得超过1121个赞
知道小有建树答主
回答量:371
采纳率:55%
帮助的人:156万
展开全部
document.onclick=funciton(e){
e = e || window.event;
if(e.target == oGohove){
oGotohove.style.display = 'block';
}else{
oGotohove.style.display = 'none';
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式