如何在鼠标点击div区域外执行函数

2025-03-22 19:16:59
推荐回答(2个)
回答1:

可以监听这个div的父元素,如body。
然后再监听函数中检查e.target || e.srcElement,看是不是你的div, 不是的话,就隐藏掉div

JavaScript code?

var yourDiv = document.getElementById('yourDiv');
document.body.onclick = function(e){
e = e || window.event;
var target = e.target || e.srcElement;
if(target != yourDiv){
yourDiv.style.display = 'none';
}
}

回答2:

假如div里面有东西,例如button
var btn = document.getElementsByTagName("button")[0]
var div = document.getElementsByTagName("div")[0]
document.body.onclick = function(){
var e = window.event.target;
if(e == div || e == btn){
div.style.display = "block"
}else{
div.style.display = "none"
}
}