1 回答
TA贡献1802条经验 获得超10个赞
您的关闭功能span.onclick = function()不会隐藏子项,因此第二次单击时,您会看到上次单击时的上一个图像和 modalImage。
function myBeautifulFunc(imageId, modalImageId) {
var modal = document.getElementById('myModal');
var img = document.getElementById(imageId);
var modalImg = document.getElementById(modalImageId);
img.onclick = function() {
modal.style.display = "block";
modalImg.src = this.src;
}
// Get the <span> element that closes the modal
var span = document.getElementsByClassName("close")[0];
// When the user clicks on <span> (x), close the modal
span.onclick = function() {
modal.style.display = "none";
img.style.display = "none" // hide this also
modalImg.style.display = "none" // hide this also
}
}
在任何点击之前
.myModal = 隐藏
img1 = 隐藏
modalImg1 = 隐藏
第一次点击后关闭
.myModal = 隐藏
img1 = 可见
modalImg1 = 可见
第二次点击后
.myModal = 隐藏
img1 = 可见
modalImg1 = 可见
img2 = 可见
modalImg2 = 可见
添加回答
举报