为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

慕容森 2019-04-10 20:47:50
不是mouseout这样的事件,是在一个元素之外发生点击事件,然后隐藏元素内的一个下拉菜单,效果就类似于segmentfault在添加标签时,会出来一个提示的下拉菜单,然后在菜单之外点击就隐藏菜单,不知道应该怎样绑定事件呢?
查看完整描述

2 回答

?
心有法竹

TA贡献1866条经验 获得超5个赞

用$element来表示你要隐藏的下拉菜单即$element=$('.need-hidden-element')
你添加下面的代码
$(document)
.on('click',function(){
$element.hide();
})
.on('click','.need-hidden-element',function(event){
event.stopPropagation();
})
                            
查看完整回答
反对 回复 2019-04-10
?
慕容708150

TA贡献1831条经验 获得超4个赞

click事件绑定到ele父元素(document.body)。
判断事件event.target和event.currentTarget是否相等。
如果相等,则是在ele元素之外(document.body)触发,隐藏下拉菜单,不等则是ele元素触发。
                            
查看完整回答
反对 回复 2019-04-10
  • 2 回答
  • 0 关注
  • 364 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信