자식 레이어 팝업 - ChoDragon9/posts GitHub Wiki
자식레이어를 클릭했을 때 부모에게 등록된 리스너 실행을 막기 위해서는 자식레이어에서 stopPropagation
을 사용한다.
<div class="first-layer">
<button>Toggle</button>
<div class="child-layer"></div>
</div>
const addEvent = (selector, eventName, listener) => {
document.querySelector(selector).addEventListener(eventName, listener)
}
document.addEventListener('DOMContentLoaded', () => {
addEvent('.first-layer', 'click', function () {
const classList = this.classList
if (classList.contains('open')) {
classList.remove('open')
} else {
classList.add('open')
}
})
addEvent('.child-layer', 'click', event => event.stopPropagation())
});