简单JavaScript事件侦听器不工作
我已经为我目前正在构建的JavaScript程序编写了一个简单的JavaScript事件监听器——我已经编写了一个简单的模式,它在单击时打开和关闭,但是单击似乎不起作用。我正在通过JSON循环显示电子商务项目的项目,因为我正在为每个新图像创建一个新的div。这可能是模态功能不起作用的原因吗简单JavaScript事件侦听器不工作,javascript,html,css,Javascript,Html,Css,我已经为我目前正在构建的JavaScript程序编写了一个简单的JavaScript事件监听器——我已经编写了一个简单的模式,它在单击时打开和关闭,但是单击似乎不起作用。我正在通过JSON循环显示电子商务项目的项目,因为我正在为每个新图像创建一个新的div。这可能是模态功能不起作用的原因吗 var parentDiv=document.getElementsByClassName('items')) for(设i=0;i
var parentDiv=document.getElementsByClassName('items'))
for(设i=0;i
.modal{
位置:固定;
z指数:1;
左:0;
排名:0;
身高:100%;
宽度:100%;
溢出:自动;
背景色:rgba(0,0,0,0.719);
显示:无;
}
.模态内容{
背景色:#F4;
利润率:20%自动;
填充:20px;
宽度:70%;
盒影:0 5px 8px rgba(0,0,0,0.2),0 7px 20px rgba(0,0,0,0.2);
}
.关闭{
颜色:#ccc;
浮动:对;
字体大小:30px;
}
.closeBtn:悬停,
.closeBtn:焦点{
颜色:#000;
文字装饰:无;
光标:指针;
}
&时代;
?
此处var modalbtn=document.getElementsByClassName('style');
,模态按钮是元素的集合。因此,modalbtn.addEventListener('click',openmodel);
在此处不起作用
加
这将遍历元素并将
单击事件附加到它。或者只做文档。addEventListener('click',function(e){if(e.target&&e.target.classList.contains('style')){…}});
。因为他在处理动态元素,我想这是更安全的方法bet@icecub那太正确了
var modalbtn = document.getElementsByClassName('style');
modalbtn.forEach(function(button){
// listen for click event
button.addEventListener('click', openModal);
})