javascript

javascript_(이벤트전파)_22.05.09(day11)

양빵빵 2022. 5. 9. 12:12

 

 

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        #fruits {
            width: 400px;
            padding: 50px;
            border: 2px solid red;
        }

        #fruits li {
            background: greenyellow;
            margin-bottom: 10px;
        }

        #fruits li:first-child {
            position: absolute;
            bottom: 10%;
            right: 5%;
        }
    </style>
</head>
<body>
    <ul id="fruits">
        <li class="apple">Apple</li>
        <li class="banana">Banana</li>
        <li class="grape">Grape</li>
    </ul>
</body>
<script>
    const $fruits = document.getElementById('fruits');
    $fruits.onclick = e => {
        console.log('ul 태그에서 클릭이벤트 발생!');
        console.log('실제로 이벤트가 발생한 요소:', e.target);
        console.log('이벤트 핸들러가 바인딩된 요소:', e.currentTarget);
        // 이벤트를 어디에 걸어 놓았느냐 라는 의미,
        // 여기서 currentTarget의 태그는 변하지 않는다. <ul>
    }

    $fruits.firstElementChild.onclick = e => {
        console.log('li.apple에서 클릭 이벤트 발생!');
    };
</script>
</html>