강제로 이벤트 발생시키기
"이벤트가 강제로 발생했다"는 말은 "사용자에 의해" 이벤트가 발생했음을 의미하는것이 아니라
"핸들러에 의해" 자동으로 이벤트가 발생했다는 의미
단독이벤트 등록 메서드를 사용하거나 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>