gpt4 book ai didi

javascript - 通过使用普通 javascript 在外部单击关闭

转载 作者:行者123 更新时间:2023-11-28 01:40:54 25 4
gpt4 key购买 nike

我想在菜单按钮区域外单击时关闭菜单(删除打开时添加的类)。

我一切正常,但想知道我放在一起的代码是否正确,因为我认为只有在将 .newClass 添加到 div 时才能触发外部点击。如果是这样,我该如何添加?我对 javascript 很陌生。

var b = document.getElementById("menu");
document.addEventListener("mouseup", function(event) {
var clickOnMenu = b.contains(event.target);
if (clickOnMenu) {
b.classList.toggle("newClass");
} else {
b.classList.remove("newClass");
}
});
div.box {
margin: auto;
padding: 1em;
max-width: 6em;
background: rgba(0, 0, 0, 0.6);
text-align: center;
color: white;
transition: .2s ease-in-out;
cursor: pointer;
}

div.box:hover {
background: rgba(0, 0, 0, 0.7);
}

div.newClass {
padding-bottom: 100px;
}
<div id="menu" class="box">Menu</div>

最佳答案

希望对你有帮助

var b = document.getElementById("menu");
document.addEventListener("mouseup", function(event) {
var x = event.target.id;
if(x == "menu" ) {
b.classList.add("newClass");
} else {
b.classList.remove("newClass");
}
});
div.box {
margin: auto;
padding: 1em;
max-width: 6em;
background: rgba(0, 0, 0, 0.6);
text-align: center;
color: white;
transition: .2s ease-in-out;
cursor: pointer;
}

div.box:hover {
background: rgba(0, 0, 0, 0.7);
}

div.newClass {
padding-bottom: 100px;
}
<div id="menu" class="box">Menu</div>

关于javascript - 通过使用普通 javascript 在外部单击关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50438644/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com