在一个元素之外发生点击事件然后隐藏一个下拉菜单该怎么做?

不是mouseout这样的事件,是在一个元素之外发生点击事件,然后隐藏元素内的一个下拉菜单,效果就类似于segmentfault在添加标签时,会出来一个提示的下拉菜单,然后在菜单之外点击就隐藏菜单,不知道应该怎样绑定事件呢?
慕容森
浏览 365回答 2
2回答

心有法竹

用$element来表示你要隐藏的下拉菜单即$element=$('.need-hidden-element')你添加下面的代码$(document).on('click',function(){$element.hide();}).on('click','.need-hidden-element',function(event){event.stopPropagation();})

慕容708150

click事件绑定到ele父元素(document.body)。判断事件event.target和event.currentTarget是否相等。如果相等,则是在ele元素之外(document.body)触发,隐藏下拉菜单,不等则是ele元素触发。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript