카테고리 없음

버블링, 캡쳐링

broship 2021. 1. 27. 23:28

만약 전역에도, 부모 노드에도, 자식 노드에도 이벤트가 있을시 항상 나 자신이 제일 먼저 실행됨
본인 태그 이벤트 -> 부모 태그 이벤트 -> 전역 이벤트 순으로 실행됨

 

1. 버블링: 여기서 오직 본인 태그만 실행되게 하고 싶다

if(event.stopPropagation)
	event.stopPropagation();//이것만 써도됨
else
	event.cancelBubble = true;//IE 7,8버전일때는 이렇게 버블링 막아야됨

이렇게 하면 상위 이벤트 다 막힘

 

2. 캡쳐링: 특정 이벤트는 무조건 제일 먼저 실행되게 하고 싶다

document.addEventListener("click", function() {
	alert("capture 방법")
}, true);//true: capture 사용한다

true를 주면 이 이벤트가 항상 제일 먼저 실행됨