segmentfault的右上角的小鈴鐺,彈出菜單之后,當(dāng)點(diǎn)擊菜單范圍,菜單不消失,當(dāng)點(diǎn)擊菜單以外范 財(cái)富值64?
想知道原理<愛尬聊_知識(shí)大全>,謝謝!
wing1#p#000.RC2 2天前
對(duì)包含小鈴鐺菜單的DIVclass="opts__item--message"
綁定一個(gè)click事件,點(diǎn)擊的時(shí)候,用stopPropagation方法阻止事件傳播。對(duì)document也綁定一個(gè)click事件,點(diǎn)擊的時(shí)候,關(guān)閉打開的菜單。
ww19750614 2天前
在BS的彈出菜單控件中,它會(huì)先利用JavaScript監(jiān)聽整個(gè)document的點(diǎn)擊事件。如果有對(duì)屏幕的點(diǎn)擊,會(huì)把所有的彈出菜單進(jìn)行關(guān)閉(隱藏)。而對(duì)于某一個(gè)彈出菜單界面,它也會(huì)通過JavaScript監(jiān)聽其彈出層范圍內(nèi)的點(diǎn)擊事件。如果在此范圍內(nèi)進(jìn)行了點(diǎn)擊,則會(huì)阻斷點(diǎn)擊事件的冒泡。由于事件冒泡是從小到大進(jìn)行的,所以事件是不會(huì)再傳遞到document上,也就不能讓監(jiān)聽document的JavaScript去關(guān)閉菜單了。
陌wei 2天前
body上綁定事件,單擊消失,鈴鐺阻止事件冒泡
wing1#p#000.RC2 2天前
目測(cè)可能是這樣寫的,那個(gè)鈴鐺class是opts__item--message,假定用的jQ