亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

為什么會冒泡?

<!DOCTYPE html>
<html>

<head>
??? <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
??? <title></title>
??? <style>
??? .left div,
??? .right div {
??????? width: 500px;
??????? height: 100px;
??????? padding: 5px;
??????? margin: 5px;
??????? float: left;
??????? border: 1px solid #ccc;
??? }
?? ?
??? .left div {
??????? background: #bbffaa;
??? }
?? ?
??? .right div {
??????? background: yellow;
??? }
??? </style>
??? <script src="http://libs.baidu.com/jquery/1.9.1/jquery.js"></script>
</head>

<body>
??? <h3>事件對象的屬性與方法</h3>
??? <div class="left">
??????? <div id="content">
??????????? 外層div元素
??????????? <br />
??????????? <span style="background: silver;">內層span元素</span>
??????????? <br /> 外層div元素
??????? </div>
??????? <br />
??????? <div id="msg"></div>
??? </div>
??? <script type="text/javascript">
??? //為 <span> 元素綁定 click 事件 ?
??? $("span").click(function() {
??????? $("#msg").html($("#msg").html() + "<p>內層span元素被單擊</p>");
??? });
??? //為 Id 為 content 的 <div> 元素綁定 click 事件 ?
??? $("#content").click(function(event) {
??????? $("#msg").html($("#msg").html() + "<p>外層div元素被單擊</p>");
??????? event.stopPropagation(); //阻止事件冒泡 ?
??? });
??? //為 <body> 元素綁定 click 事件 ?
??? $("body").click(function() {
??????? $("#msg").html($("#msg").html() + "<p>body元素被單擊</p>");
??? });
??? </script>
</body>

</html>

正在回答

1 回答

冒泡是瀏覽器的屬性,你理解成規定就好,不阻止的話默認會一級一級往上傳,看#content的click事件函數里寫了stopPropagation阻止冒泡,所心上一級的body的click才不會被觸發,刪掉這句的話,點擊span后所有的click事件都會被觸發。

0 回復 有任何疑惑可以回復我~
#1

1234323181 提問者

是不是事件都會冒泡
2016-11-19 回復 有任何疑惑可以回復我~
#2

人土土zzzzz 回復 1234323181 提問者

原生事件應該都是這樣,建議你看Amy老師的《DOM事件探秘》,第一章事件流里面有講到事件冒泡和事件捕獲,不同瀏覽器的事件流可能不一樣。
2016-11-20 回復 有任何疑惑可以回復我~
#3

1234323181 提問者 回復 人土土zzzzz

謝謝!
2016-11-21 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

為什么會冒泡?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號