javascript - 通过单击覆盖关闭模式会产生大量错误
问题描述
当用户单击模态关闭按钮或覆盖时,模态应该从 DOM 中删除。它可以正常工作,问题是如果覆盖是被单击的覆盖,控制台中会出现错误: 无法读取 null 的属性“删除”
JS是这样的:
_deleteModal(id) {
const deletionElements = [document.querySelector('.close__modal'), overlay];
deletionElements.forEach(el =>
el.addEventListener('click', function (e) {
e.preventDefault();
document.getElementById(id).remove();
overlay.classList.toggle('hidden');
})
);
HTML 如下所示:
<div class="overlay hidden"></div>
<div class="container">
// modal is inserted here
</div>
解决方案
推荐阅读
- java - 如何从 Android 的内置导航抽屉中打开 Activity
- python - 在 selenium 中发送请求,而无需单击 python 中的发送按钮
- sql-server - 无法将 polybase 连接到 Oracle
- powerbi - Power BI - 将日期转换为按国家/地区唯一的升序整数
- react-native - Firebase 云消息传递通知 - 多次收到消息
- python - Kivy on_release 在触摸屏上不起作用 - SDL 问题?
- node.js - 为什么 settimeout 在我的 aws lambda 中导致 502?
- powershell - 如何使用 powershell 将文件从远程计算机(同一网络)复制到本地计算机?
- azure - 以非 root 身份运行自定义脚本扩展
- sql-server - 需要更快的方法将大型 CSV 文件导入 Azure SQL Server DB