상식닷컴
로그인
가입하기
2026년 상식닷컴 선정 식당 & 카페 리스트
2025년 2026년 신상 호텔 리스트
최근에 오픈한 호텔을 찾는다면 살펴보세요
일주일 식단표 어플
자동 일주일 식단표 어플
안드로이드
아이폰
주식 & 코인 차트의 신
1000만원으로 2000만원 만들기 프로젝트
수정하기 - 자바스크립트에서 이벤트 리스너를 추가하는 방법은 무엇인가요?
닉네임
비밀번호
제목
내용
[이미지 업로드는 권한이 있는 사람만 가능. 하단 카톡으로 연락]
<a href='https://sangseek.com/sangseeks/자바/ko'>자바</a>스크립트에서 이벤트 리스너를 추가하는 방법은 웹 개발에서 매우 중요한 개념입니다. 이벤트 리스너는 특정 이벤트가 발생했을 때 실행할 함수를 정의하는 방법으로, 사용자와의 상호작용을 처리하는 데 사용됩니다. 여기서는 이벤트 리스너를 추가하는 방법에 대해 자세히 설명하겠습니다. 1. 기본 개념 이벤트 리스너는 HTML 요소에 특정 이벤트가 발생했을 때 호출되는 함수를 등록하는 것입니다. 예를 들어, 사용자가 버튼을 클릭하거나 마우스를 올리거나 키보드를 누르는 등의 행동이 이벤트로 간주됩니다. 자바스크립트에서는 `addEventListener` 메서드를 사용하여 이러한 이벤트 리스너를 추가할 수 있습니다. 2. `addEventListener` 메서드 `addEventListener` 메서드는 다음과 같은 구문을 사용합니다: ```javascript element.addEventListener(event, function, useCapture); ``` - element : 이벤트 리스너를 추가할 DOM 요소입니다. - event : 감지하고자 하는 이벤트의 종류를 문자열로 지정합니다. 예를 들어, `'click'`, `'mouseover'`, `'keydown'` 등이 있습니다. - function : 이벤트가 발생했을 때 실행될 콜백 함수입니다. - useCapture : (선택 사항) <a href='https://sangseek.com/sangseeks/이벤트 캡처링/ko'>이벤트 캡처링</a>을 사용할지 여부를 결정하는 불리언 값입니다. 기본값은 `false`입니다. 3. 예제 다음은 버튼 클릭 이벤트에 대한 간단한 예제입니다. ```html <!DOCTYPE html> <html lang="ko"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>이벤트 리스너 예제</title> </head> <body> <button id="myButton">클릭하세요!</button> <script> // 버튼 요소를 선택합니다. const button = document.getElementById('myButton'); // 클릭 이벤트 리스너를 추가합니다. button.addEventListener('click', function() { alert('버튼이 클릭되었습니다!'); }); </script> </body> </html> ``` 위의 예제에서 사용자가 버튼을 클릭하면 알림창이 나타납니다. `addEventListener`를 사용하여 클릭 이벤트를 감지하고, 해당 이벤트가 발생했을 때 실행할 함수를 정의했습니다. 4. 여러 이벤트 리스너 추가하기 하나의 요소에 여러 개의 이벤트 리스너를 추가할 수 있습니다. 예를 들어, 버튼에 클릭 이벤트와 마우스 오버 이벤트를 추가할 수 있습니다. ```javascript button.addEventListener('mouseover', function() { console.log('마우스가 버튼 위에 있습니다.'); }); ``` 5. 이벤트 리스너 제거하기 이벤트 리스너를 제거하고 싶다면 `<a href='https://sangseek.com/sangseeks/remove/ko'>remove</a>EventListener` 메서드를 사용할 수 있습니다. 이 메서드는 `addEventListener`와 동일한 인자를 필요로 합니다. 단, 반드시 동일한 함수 참조를 사용해야 합니다. ```javascript function handleClick() { alert('버튼이 클릭되었습니다!'); } // 이벤트 리스너 추가 button.addEventListener('click', handleClick); // 이벤트 리스너 제거 button.removeEventListener('click', handleClick); ``` 6. 이벤트 객체 이벤트 리스너의 콜백 함수는 이벤트 객체를 매개변수로 받을 수 있습니다. 이 객체는 이벤트에 대한 다양한 정보를 담고 있습니다. ```javascript button.addEventListener('click', function(event) { console.log('클릭한 위치:', event.clientX, event.clientY); }); ``` 위의 예제에서 `event.clientX`와 `event.clientY`를 사용하여 클릭한 위치의 좌표를 출력할 수 있습니다. 7. 이벤트 전파 이벤트는 DOM 트리에서 전파되는 방식이 있습니다. 이벤트 캡처링과 버블링이라는 두 가지 단계가 있습니다. 기본적으로 이벤트는 버블링 방식으로 전파됩니다. 즉, <a href='https://sangseek.com/sangseeks/하위 요소/ko'>하위 요소</a>에서 발생한 이벤트가 상위 요소로 전파됩니다. 이를 제어하기 위해 `<a href='https://sangseek.com/sangseeks/stopPropagation/ko'>stopPropagation</a>()` 메서드를 사용할 수 있습니다. ```javascript button.addEventListener('click', function(event) { event.stopPropagation(); // 이벤트 전파를 중단합니다. }); ``` 8. 결론 자바스크립트에서 이벤트 리스너를 추가하는 것은 웹 페이지의 상호작용을 풍부하게 만드는 데 필수적인 요소입니다. `addEventListener` 메서드를 사용하여 다양한 이벤트를 처리하고, 필요에 따라 이벤트 리스너를 제거하거나 이벤트 객체를 활용하여 더 많은 정보를 얻을 수 있습니다. 이러한 기능들을 잘 활용하면 사용자 경험을 향상시킬 수 있습니다.
이용안내
커뮤니티 이용안내
×
- 게시한 게시글로 발생하는 문제는 게시자에게 책임이 있습니다.
- 게시글이 타인/타업체의 저작권을 침해할 경우 모든 책임은 게시자에게 있습니다. 게시자가 모든 손해를 부담해야 합니다.
- 상식닷컴 운영자는 게시자와 상의하지 않고 게시글을 수정 또는 삭제할 수 있습니다.
- 상식닷컴 운영자는 깨끗한 커뮤니티 공간을 만드는 것이 1순위입니다.
수정하기
취소하기