task33 进阶:DOM 事件

2019-05-21  本文已影响0人  vivienYang2019

上一次课程的dom events知识?


事件模型.png

用实际例子学习dom事件模型
——点击别处关闭浮层的效果
搜 bootstrap popover
bootstrap-popover

三角形.png

怎么给浮层加个三角形的???

stopPropagation.png

给btn加一个eventListener,将浮层显示
给document加一个eventListener,将浮层隐藏
但因为冒泡,在点击btn的时候会先执行btn的el,再执行document的el,先显示马上再隐藏,没有效果。


image.png

怎么解决呢?
——给wrapper(包括btn和浮层)添加阻止冒泡 e.stopPropagation(),这样就不会执行document的事件监听了


image.png image.png

——不行,在click btn的时候,先执行show(),再执行给documnet加EL,然后马上就嫁给document了,接着向上冒泡,因为没有阻止,到document了,就会执行这个EL,隐藏浮层。马上就加了EL,紧接着就执行了

冒泡的可视化.png

会从里面一层依次向外层执行

上一篇下一篇

猜你喜欢

热点阅读