1.
//html
<div id="box" ref="boxs" style="width:110px;height:110px;background-color:red"></div>
//JS
created(){ document.addEventListener('click',(e)=>{
console.log(this.$refs.boxs.contains(e.target));
if(!this.$refs.boxs.contains(e.target)){
this.isShowDialog = false;
}
})
}
2.
3、原生js的写法
// html <div id="box" style="width:110px;height:110px;background-color:red"></div> //js document.addEventListener('click',(e)=>{
alert('zhixing')
var box = document.getElementById('box');
if(box.contains(e.target)){
alert('在内');
}else{
alert('在外');
}
})
3、jq最简单的写法
$(document).click(function(){
$("#element").hide();
});
$("#element").on("click",function(event){
event.stopPropagation();
});
参考:https://blog.csdn.net/zezeadede555/article/details/88599553