Javascript 单击一个单独的按钮,该按钮不是';t是'的一部分;关闭';按钮点火';不管怎么说,这是一场势均力敌的比赛

Javascript 单击一个单独的按钮,该按钮不是';t是'的一部分;关闭';按钮点火';不管怎么说,这是一场势均力敌的比赛,javascript,html,css,Javascript,Html,Css,我有一个公告栏,其中有一个链接到另一个站点的中心按钮。它在最右边还有一个“关闭”按钮。当我单击中心按钮时,关闭按钮也会被触发 我测试了它是否是因为我将#closediv从#bardiv中删除,从而将其封装在中,但它仍然导致了相同的问题 var closeBar=document.getElementById(“close”); var bar=document.getElementById(“bar”); 如果(关闭栏){ addEventListener('单击',函数()){ bar.cl

我有一个公告栏,其中有一个链接到另一个站点的中心按钮。它在最右边还有一个“关闭”按钮。当我单击中心按钮时,关闭按钮也会被触发

我测试了它是否是因为我将
#close
div从
#bar
div中删除,从而将其封装在中,但它仍然导致了相同的问题

var closeBar=document.getElementById(“close”);
var bar=document.getElementById(“bar”);
如果(关闭栏){
addEventListener('单击',函数()){
bar.classList.add('superHidden');
})
}
#条{
位置:固定;
宽度:100vw;
显示器:flex;
高度:50px;
底部:0px;
左:0px;
}
保险商实验室{
显示器:flex;
证明内容:中心;
身高:100%;
列表样式:无;
}
李{
保证金:自动0;
字体大小:22px;
}
#接近{
位置:固定;
右:20px;
底部:0;
z指数:1000;
高度:50px;
宽度:25px;
光标:指针;
}
超级禁区{
显示:无!重要;
}

  • X

您没有为事件侦听器指定目标,因此您正在将单击事件添加到整个窗口:

如果单击窗口上的任意位置,将触发此事件

听起来您只想将事件添加到“关闭按钮”中:

完整示例:

var closeBar=document.getElementById(“close”);
var bar=document.getElementById(“bar”);
如果(关闭栏){
closeBar.addEventListener('click',function(){
bar.classList.add('superHidden');
})
}
#条{
位置:固定;
宽度:100vw;
显示器:flex;
高度:50px;
底部:0px;
左:0px;
}
保险商实验室{
显示器:flex;
证明内容:中心;
身高:100%;
列表样式:无;
}
李{
保证金:自动0;
字体大小:22px;
}
#接近{
位置:固定;
右:20px;
底部:0;
z指数:1000;
高度:50px;
宽度:25px;
光标:指针;
}
超级禁区{
显示:无!重要;
}

  • X

derp。这其实是相当明显的。当时我错过了比赛,我一直在兜圈子,想弄清楚到底发生了什么。谢谢你的发现!
addEventListener('click', function() {
    bar.classList.add('superHidden');
})
closeBar.addEventListener('click', function() {
    bar.classList.add('superHidden');
})