请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于事件冒泡

关于事件冒泡的处理过程,总感觉哪里有点怪怪的(有说不清的疑惑)。例如使用代理,(拍照才发现书法有点差)。点击链接时,由于事件冒泡,会触发div上绑定的事件(是这个样子吧?)。如果我在里面添加阻止事件冒泡,此事件依然被触发。

正在回答

2回答

双越 2017-07-11 12:30:00

你是将事件绑定到了 div 上,你再组织冒泡,还有啥用

0 回复 有任何疑惑可以回复我~
小王子抓猫咪 2017-11-04 11:59:26

呵呵,老师这回答我也是醉了,完全没看懂这家伙说的意思吧。

人家说的是,在div的处理事件程序中添加e.stopPropagation()代码之后,点击a标签依然会弹出a标签的InnerHTML内容。


正确解答应该是:

如果你想阻止a标签的冒泡,请单独给a标签添加事件处理函数,同时在里面使用e.stopProgation()代码。

你在div的事件绑定处理函数中添加的代码都只是在div这个层次上被执行。这个地方涉及到事件触发流程。

顺序是 事件捕获,事件目标,事件冒泡三个阶段。你这里addEventListener使用的useCapture默认是false。那么你监听的就是冒泡阶段,而冒泡阶段是从低往上,也就是先经过了事件目标a再到div。那么你不在a的事件处理中阻止的话,自然就会冒泡到div。而你在div里阻止的话,自然就不会冒泡到body,document之上。

0 回复 有任何疑惑可以回复我~

相似问题

登录后可查看更多问答,登录/注册

问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信