이벤트 리스너, 이벤트 위임

2021. 7. 13. 01:22·과거
반응형

property event

 

GlobalEventHandlers.onclick - Web APIs | MDN

The onclick property of the GlobalEventHandlers mixin is the event handler for processing click events on a given element.

developer.mozilla.org

Web api event listener

 

EventTarget.addEventListener() - Web APIs | MDN

The EventTarget method addEventListener() sets up a function that will be called whenever the specified event is delivered to the target.

developer.mozilla.org

// event listener
const container = document.querySelector('.container');

container.onclick = () => {
  console.log('property event')
};

// 같은 이벤트에 여러 이벤트 리스너 등록 가능
container.addEventListener('click', () => {
  console.log('Web api event listener');
});

 

이벤트 위임 - 버블링, 캡쳐링

const container = document.querySelector('.container');

container.addEventListener('click', (e) => {
  console.log('e.target: ', e.target);
  console.log('e.currentTarget: ', e.currentTarget);
});

노란 박스, 초록 박스, 빨간 박스 차례로 클릭한 결과

클릭 이벤트를 상위 요소한테 걸면 이벤트 버블링에 의해 하위 요소가 클릭됐을 때 이벤트 버블링으로 상위 요소의 이벤트를 트리거한다.

-> 자식 요소 하나하나에 이벤트를 걸지 않고, 상위 요소에 이벤트를 걸고 어떤 자식 요소가 이벤트를 트리거했는지 알 수 있음.

이벤트 버블링 => 하위 요소에서 일어난 이벤트가 상위 요소로 올라가면서 이벤트를 트리거
이벤트 캡쳐링 => 상위 요소에서 일어난 이벤트가 타켓 요소까지 내려가면서 이벤트를 트리거

반응형

'과거' 카테고리의 다른 글

[JS] typeof null, null instanceof Object  (0) 2021.07.13
details marker 제거  (0) 2021.07.13
[JS] Lexical Grammar, Language Element  (0) 2021.07.05
너 왜 코드 그렇게 짰어?  (0) 2021.07.05
Non-blocking JavaScript - 1  (0) 2021.06.17
'과거' 카테고리의 다른 글
  • [JS] typeof null, null instanceof Object
  • details marker 제거
  • [JS] Lexical Grammar, Language Element
  • 너 왜 코드 그렇게 짰어?
optimy
optimy
See one, do one, teach one
  • optimy
    공자천주
    optimy
  • 전체
    오늘
    어제
    • All posts (27)
      • Note (4)
      • Book (0)
      • Do one (0)
      • Teach one (0)
      • 과거 (23)
  • 블로그 메뉴

    • 링크

      • github
    • 공지사항

    • 인기 글

    • 태그

      쿼티
      능동적 태도
      콜맥
      Sync & Async
      구현 패턴
      탭 관리 프로그램
      State Control
      날개셋 한글 입력기
      Runtime Execution
      창 그룹화
      브라우저 렌더링
      개발자 도구 활용
      캡처후저장
      details marker 제거
      이벤트 위임
      version specifications
      복사한것저장
      프론트엔드 개발환경
      JavaScript
      이미지파일저장
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.0
    optimy
    이벤트 리스너, 이벤트 위임
    상단으로

    티스토리툴바