使用Javascript将display设置为none

使用Javascript将display设置为none,javascript,Javascript,我似乎无法使关闭按钮工作。我正在为多个图像制作一个动态脚本,点击弹出一个模式,然后用关闭按钮关闭。不过,除了显示属性之外,其他任何东西都可以工作,我不知道该怎么办 功能回复\u单击单击\u id{ var mc=document.getElementByIdclicked_id.getElementsByTagNamediv[1]; mc.style.display=块; } 函数隐藏{ var divsToHide=document.getElementsByClassNamemodalco

我似乎无法使关闭按钮工作。我正在为多个图像制作一个动态脚本,点击弹出一个模式,然后用关闭按钮关闭。不过,除了显示属性之外,其他任何东西都可以工作,我不知道该怎么办

功能回复\u单击单击\u id{ var mc=document.getElementByIdclicked_id.getElementsByTagNamediv[1]; mc.style.display=块; } 函数隐藏{ var divsToHide=document.getElementsByClassNamemodalcont; 对于变量i=0;i
这是因为您单击.modalclose会使.activities冒泡。所以你得到了这个效果:

点击.modalclose 执行关闭模态函数 事件冒泡到。活动 单击事件将在上再次执行。活动 模式将再次显示 要看到这一点,请将console.log添加到每个函数中

您必须在函数调用中传递事件,然后执行event.stopPropagation

var-toggler=true; 功能回复\u单击单击\u id{ console.log'Show'; var mc=document.getElementByIdclicked_id.getElementsByTagNamediv[1]; mc.style.display=块; } 函数隐藏{ console.log'Hide'; 中频开关{ e、 停止传播; } var divsToHide=document.getElementsByClassNamemodalcont; 对于变量i=0;i
现在我明白了原因。可悲的是,e.stopPropagation;没用。我可以将onclick=reply\u clickthis.id移动到第一个图像,但我需要动态拉出父id。检查internet如何检查事件目标,也许这会有帮助,谢谢帮助!非常感谢。我用parentnode修复了它。