728x90
728x90
이벤트 캡쳐링/버블링과 관련있음
event.preventDefault()는 이벤트의 전파를 막지않고 그 이벤트를 취소한다.
이벤트 취소 가능 여부는 event.cancelable()로 확인한다. 취소가 불가능할 시 preventDefault를 호출해도 소용 없다.
event.cancelable의 리턴값은 true 또는 false. 가능여부는 이벤트 초기화 시 판별된다.
DOM을 통한 이벤트의 전파를 막으려면 event.stopPropagation을 사용한다. 이벤트의 기본적인 동작(캡쳐링과 버블링)이 일어나는 것을 막기위해 보완적으로 사용되는 방법
event.preventDefault()와 event.stopPropagation 모두 이벤트 관련 동작에서 잘 사용되는 게 비슷하다.
둘의 차이점은 preventDefault는 어떠한 동작을 중단시키는 것 (예를 들면 a 태그의 이동 행위 막기) 이며,
stopPropagation은 부모 엘리먼트에게 이벤트가 전파되는 등을 막는 것이다.
#event.preventDefault event.stopPropagation 차이점 #이벤트캡쳐링 #이벤트버블링
728x90
728x90
'Javascript' 카테고리의 다른 글
JS 글자수 체크(공백포함, 제외) 및 언어 옵션 설정 (0) | 2020.11.25 |
---|---|
세션 종료 (로그아웃) 구현 (0) | 2020.11.23 |
JSON 문서 작성 및 JS로 입력, 추출 (0) | 2020.11.19 |
[JS] 쿠키 생성(저장), 불러오기 (0) | 2020.10.30 |
모던 자바스크립트 입문 : 9. 객체 (0) | 2020.10.21 |