jQuery API event.target

event.target 속성

이벤트를 시작한 DOM 요소 리턴 값은 요소를 리턴한다.

target 속성은 이벤트 또는 해당 이벤트의 자손에 대해 등록 된 요소가 될 수 있습니다. 이벤트 버블링으로 인해 이벤트가 처리되고 있는지 판별하기 위해 event.target을 this와 비교하는 것이 종종 유용합니다. 이 속성은 이벤트 위임에 매우 유용합니다.

예제

클릭할 때마다 태그의 이름이 출력된다. event.target.nodename 을 확인 할 수 잇다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>event.target demo</title>
<style>
span, strong, p {
padding: 8px;
display: block;
border: 1px solid #999;
}
</style>
<script src="https://code.jquery.com/jquery-1.10.2.js"></script>
</head>
<body>

<div id="log"></div>
<div>
<p>
<strong><span>click</span></strong>
</p>
</div>

<script>
$( "body" ).click(function( event ) {
$( "#log" ).html( "clicked: " + event.target.nodeName );
});
</script>

</body>
</html>

예제

간단한 이벤트 위임을 구현합니다. 클릭 핸들러가 순서가 지정되지 않은 목록에 추가되고 li 자식의 하위 항목이 숨겨집니다. li 자식 중 하나를 클릭하면 해당 자식을 토글합니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>event.target demo</title>
<script src="https://code.jquery.com/jquery-1.10.2.js"></script>
</head>
<body>

<ul>
<li>item 1
<ul>
<li>sub item 1-a</li>
<li>sub item 1-b</li>
</ul>
</li>
<li>item 2
<ul>
<li>sub item 2-a</li>
<li>sub item 2-b</li>
</ul>
</li>
</ul>

<script>
function handler( event ) {
var target = $( event.target );
if ( target.is( "li" ) ) {
target.children().toggle();
}
}
$( "ul" ).click( handler ).find( "ul" ).hide();
</script>

</body>
</html>
Share