优艾设计网

segmentfault的右上角的小铃铛,弹出菜单之后,当点击菜单范围,菜单不消失,当点击菜单以外范 财富值80?

想知道原理,优艾设计网_Photoshop问答谢谢!


宿命2100优艾设计网_设计模板 2022-09-09 08:16

在BS的弹出菜单控件中,它会先利用JavaScript监听整个document的点击事件。如果有对屏幕的点击,会把所有的弹出菜单进行关闭(隐藏)。而对于某一个弹出菜单界面,它也会通过JavaScript监听其弹出层范围内的点击事件。如果在此范围内进行了点击,则会阻断点击事件的冒泡。由于事件冒泡是从小到大进行的,所以事件是不会再传递到document上,也就不能让监听document的JavaScript去关闭菜单了。


萱冰雪蕊 2022-09-09 08:18

目测可能是这样写的,那个铃铛class是opts__item--message,假定用的j优艾设计网_PS百科Q


我是你霸霸呀 2022-09-09 08:19

优艾设计网_设计模板

没有细致研究过SF的代码,这里给你讲讲Bootstrap里的弹出菜单点击事件的逻辑吧,相信与SF的应用是类同的。


太阳花的杯子 2022-09-09 08:25

优艾设计网_设计圈

对包含小铃铛菜单的DIVclass="opts__item--message"绑定一个click事件,点击的时候,用stopPropagation方法阻止事件传播。对document也绑定一个click事件,点击的时候,关闭打开的菜单。


鸡实在你太美 2022-09-09 08:27

.opts__item--message为菜单,.message为铃铛和菜单的父级,整个的逻辑就是你点击页面,会冒泡到body,触发上述优艾设计网_PS问答绑定的事件,如果菜单的display不为none,且你当前点击的不属于这个message这个div的子元素(页面结构可以自己看下)(属于这个子元素就是点击的菜单本身或者铃铛了),就hide


205****157 2022-09-09 08:35

body上绑定事件,单击消失,铃铛阻优艾设计网_PS论坛止事件冒泡


0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜