이벤트 강제로 발생시키기

imjingu·2023년 7월 25일
0

개발공부

목록 보기
211/481

강제로 이벤트 발생시키기
"이벤트가 강제로 발생했다"는 말은 "사용자에 의해" 이벤트가 발생했음을 의미하는것이 아니라
"핸들러에 의해" 자동으로 이벤트가 발생했다는 의미
단독이벤트 등록 메서드를 사용하거나 trigger()메서드를 사용하면 강제로 이벤트를 발생시킬수 있음

기본형
$("이벤트 대상").단독 이벤트 등록 메서드();
$("이벤트 대상").trigger("이벤트 종류");

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <title>Document</title>
    <script>
        

        $(function() {
            $('.btn1').click(function() {
                $('.btn1').parent().next().css({color:'red'});
            });

            $('.btn2').on({
                'mouseover focus': function() {
                    $('.btn2').parent().next().css({color : 'lime'});
                }
            });
            $('.btn1').click(); // btn1을 click 강제로 실행
            $('.btn2').trigger('mouseover'); // trigger을 이용해 btn2 에 mouseover 실행
        });
    </script>
</head>
<body>
    <p>
        <button class="btn1">버튼1</button>
    </p>
    <p>내용1</p>

    <p>
        <button class="btn2">버튼2</button>
    </p>
    <p>내용2</p>
</body>
</html>

0개의 댓글