document.addEventListener('click', function (e) {
let btnPop = document.querySelectorAll('[data-trigger]')
let allPopUps = document.querySelectorAll('.popup');
if (!e.target.closest('.popup-wrapper') || e.target.closest('.close-btn')) {
allPopUps.forEach(pop => {
pop.classList.remove('active')
})
}
btnPop.forEach(btn => {
if (e.target != btn) return
let popup = document.querySelector(`[data-popup='${btn.dataset.trigger}']`)
popup ? popup.classList.add('active') : null
})
})
А почему это будет работать?