自己做了一个icon。
点击icon,打开或者关闭弹窗。
点击非弹窗区域,弹窗关闭。
icon
<div class="iconA"></div>
弹窗
<div class="modalB"></div>
监听点击事件。如果是点击的icon,return.
如果是点击的,非弹窗部分,关闭弹窗
window.addEventListener('click', (event) => {
const iconModel = document.querySelector('.iconA') || {};
if (iconModel.contains(event.target)) {
return;
}
const model = document.querySelector('.modalB') || {};
if (!model.contains(event.target)) {
//关闭弹窗事件
}
});