2019. 2. 21. 01:51ㆍJavaScript
Event
브라우저에서는 많은 이벤트가 발생합니다. 브라우저 화면의 크기를 조절한다던가 스크롤을 내리거나 무엇을 클릭할 때, 아니면 html/css를 렌더링을 마쳤다(Load) 등 많은 이벤트가 발생합니다. 그 발생된 Event에 우리는 그 땐 어떤 일을 하라고 할 일을 등록할 수가 있습니다.
즉, HTML Element별로 어떤 event(주로 키보드나 마우스)가 발생했을 때 특정 행위를 일으키고 싶다면, 대상 Element를 찾고 어떤 Event를 등록하면 됩니다. 이것을 JavaScript로 구현할 수 있습니다.
Event 등록
Event 등록 표준방법입니다.
addEventListener() 함수를 사용할 수 있습니다. addEventLister를 사용하면 여러 개의 Event Listener를 등록할 수 있습니다.
- id가 outside인 element를 찾고
- click이 일어나면 그것에 대한 함수가 실행됩니다. 이 함수를 Event Listener 또는 Event Handler라고 합니다
Event 버블링
Event 객체
event.preventDefault();
이 메소드는 기본적으로 정의된 이벤트를 작동하지 못하게 해줍니다. 밑에 예제에서 <a>태그에 의해서 해당 url로 이동해야 하지만 preventDefault()가 이벤트를 막아서 링크로 이동하지 않습니다. 하지만! Event가 전파(버블링 / 캡처링 현상)되는 것을 중단시키지는 않습니다.
event.stopPropagation();
stopPropagation()을 사용하면 Event의 전달, 전파를 막아줍니다. 하지만 위의 preventDefault()처럼 기본 Event를 막아주지는 않습니다!
[ edwith - 웹프로그래밍 부스트코스 ] 를 개인적으로 공부하고 정리한 공간입니다. 잘못된 부분은 피드백 주시면 감사하겠습니다
'JavaScript' 카테고리의 다른 글
[JavaScript] 자바스크립트 객체(Object) (0) | 2019.05.08 |
---|---|
[JavaScript] Array정리 (0) | 2019.05.08 |
[JavaScript] DOM(Document Object Model)과 querySelector (0) | 2019.02.20 |
[JavaScript] window 객체 (0) | 2019.02.19 |
[JavaScript] 함수선언식 함수표현식 호이스팅 (0) | 2019.02.19 |