[jQuery] e.target / e.currentTarget / $(this)

2022. 1. 5. 14:31·👩🏻‍💻STUDY/jQuery
<div class="parent">parent
    <div class="child">child</div>
</div>

차이를 보기 위해 먼저 .parent 클릭!

// jQuery
$('.parent').on('click', function(e) {
    console.log('e.target', e.target);
    console.log('e.currentTarget', e.currentTarget);
    console.log('$(this)', $(this));
    console.log('this', this);
});
parent click


.child 클릭!

// jQuery
$('.parent').on('click', function(e) {
    console.log('e.target', e.target);
    console.log('e.currentTarget', e.currentTarget);
    console.log('$(this)', $(this));
    console.log('this', this);
});
child click

확실하게 알아보기.

// jQuery
// 조건: .parent, .child 각각 클릭.
$('.parent').on('click', function(e) {
    $(e.target).css({background: 'red'}); // parent child red
    $(e.currentTarget).css({background: 'red'}); // parent only red
    $(this).css({background: 'red'}); // parent only red
});
  • currentTarget :: 이벤트 생성 위치 (이벤트 리스너가 달린 요소)
  • target :: 이벤트 발생위치 (실제 이벤트가 발생하는 요소)

target요소는 이벤트버블링에 의해 child가 parent의 이벤트에 영향을 받는다.




Reference

이벤트에서 target과 currentTarget의 차이
이벤트 버블링/캡쳐/위임

저작자표시 비영리 동일조건 (새창열림)
'👩🏻‍💻STUDY/jQuery' 카테고리의 다른 글
  • [jQuery] class 찾기
  • [jQuery] click(), focusin() 이벤트 충돌
  • [jQuery] :visible 조건
  • [jQuery] 필터링메소드 first() last() eq() filter() not() has() is() map() slice()
jmjm
jmjm
  • jmjm
    /* jmjmjm */
    jmjm
  • 전체
    오늘
    어제
    • 분류 전체보기 (125)
      • 👩🏻‍💻STUDY (87)
        • HTML (9)
        • CSS (25)
        • SASS (4)
        • JavaScript (16)
        • jQuery (9)
        • Publishing (8)
        • Git (11)
        • React (3)
        • Vue (0)
        • 웹접근성 (1)
        • Gulp (1)
      • 🐣codeLab (27)
      • 🌈etc (8)
      • 🥰 일상 (2)
      • 🌟읽어보기 (1)
  • 블로그 메뉴

    • 홈
    • 태그
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    html collection
    자바스크립트 표현식문
    아코디언메뉴
    javascript htmlcollection
    javascript slideup
    형제인접자 안되는 이유
    sticky 활용
    CSS 선택자
    react import export
    자바스크립트 표현식 문
    sass compiler
    형제인접자 display none
    vscode 단축키
    css flex
    자바스크립트 slideup
    형제인접자
    javascript nodelist
    접근성 주의사항
    javascript slidedown
    웹접근성
    css 형제인접자 안돼요
    sass
    sticky codepen
    javascript 컬렉션
    자바스크립트 slidedown
    자바스크립트 컬렉션
    javascript htmlcollection nodelist
    sticky jsfiddle
    HTML Form
    css 가상선택자
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
jmjm
[jQuery] e.target / e.currentTarget / $(this)
상단으로

티스토리툴바