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

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

JS事件機制,求解釋輸出

JS事件機制,求解釋輸出

躍然一笑 2018-08-09 05:10:04
<!DOCTYPE html><html><head> <title>js事件機制</title><style>#parent {width: 200px;height: 200px;text-align: center;line-height: 3;background: green;}#child {width: 100px;height: 100px;margin: 0 auto;background: orange;}</style></head><body><div id="parent">父元素<div id="child" 子元素> </div></div><script type="text/javascript">//捕獲方式:先找捕獲方式,再冒泡 輸出 :click-parent--事件捕獲 、click-child、click-body、click-parent---事件傳播varparent = document.getElementById("parent");varchild = document.getElementById("child");//捕獲階段 parent.addEventListener("click", function (e) {alert("click-parent--事件捕獲");}, true);//目標階段child.addEventListener("click", function (e) {alert("click-child");}, false);parent.addEventListener("click", function (e) {alert("click-parent---事件傳播");}, false);document.body.addEventListener("click", function (e) {alert("click-body");}, false);</script></body></html>問題一:點擊子元素為什么click-body在click-parent---事件傳播之前輸出?問題二:點擊parent以外body元素,會輸出click-parent--事件捕獲、click-body、click-parent---事件傳播?
查看完整描述

1 回答

?
www說

TA貢獻1775條經驗 獲得超8個贊

我用你的代碼測試了下,你的代碼現在是有問題的。

把下圖中的地方修改下(var和變量之間沒有空格):

var  parent = document.getElementById("parent");

var  child = document.getElementById("child");

修改后輸出的順序和你現在的順序完全不一樣,你看看自己能不能自己搞定那2個問題。


查看完整回答
反對 回復 2018-08-28
  • 1 回答
  • 0 關注
  • 604 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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