javascript - 如何为所有功能制作一个关闭按钮?在js中
问题描述
帮帮我,请检查我的代码
获取模态
var modal;
var overlay = document.getElementById("overlay");
获取打开模态的按钮
var btn_carapesan = document.getElementById("btn-carapesan");
var btn_ketentuan = document.getElementById("btn-ketentuan");
var btn_jaminan = document.getElementById("btn-jaminan");
var btn_harga = document.getElementById("btn-harga");
当用户点击按钮时,打开模式
btn_carapesan.onclick = function() {
modal = document.getElementById("modal-carapesan");
modal.style.display = "block";
document.getElementById("overlay").style.display = "block";
}
btn_ketentuan.onclick = function() {
// var span = document.getElementsByClassName("close")[1];
modal = document.getElementById("modal-ketentuan");
modal.style.display = "block";
document.getElementById("overlay").style.display = "block";
}
btn_jaminan.onclick = function() {
// span = document.getElementsByClassName("close")[2];
modal = document.getElementById("modal-jaminan");
modal.style.display = "block";
document.getElementById("overlay").style.display = "block";
}
btn_harga.onclick = function() {
// span = document.getElementsByClassName("close")[3];
modal = document.getElementById("modal-harga");
modal.style.display = "block";
document.getElementById("overlay").style.display = "block";
}
获取关闭模态的元素
var span = document.getElementsByClassName('close')[0];
// When the user clicks on <span> (x), close the modal
span.onclick = function() {
modal.style.display = "none";
document.getElementById("overlay").style.display = "none";
}
每个模态都有一个关闭按钮,我可以在第一个模态中使用关闭模态,但不能在模态中使用
解决方案
如果我正确理解了您的问题,您需要在单击关闭按钮时关闭所有模式,可以这样做:
span.onclick = function() {
[ document.getElementById("modal-carapesan"),
document.getElementById("modal-ketentuan"),
document.getElementById("modal-jaminan"),
document.getElementById("modal-harga")
].forEach(modal => {
modal.style.display = "none";
});
document.getElementById("overlay").style.display = "none";
};
推荐阅读
- wso2 - 自定义 WSO2 API Manager 3.1.0 管理控制台的界面
- sef - 如何阅读零件
- angular-reactive-forms - 无法绑定到“formGroup”,因为在使用 SharedModule 时它不是“form”的已知属性
- python - 如何减去/除以
和 和 ? - sql-server - 使用 while 循环在 SQL Server 实例上创建数据库表和表信息
- css - 为什么 SVG 旋转没有居中?
- excel - 日期自动过滤器
- python-3.x - 使用 python3.8 未将数据插入到 mysql db
- ios - 归档发布时,通过桥接头暴露的 Objective-c 类在 swift 中不可见
- python - 读取并附加到同一个文本文件