ES6+ 자바스크립트 중요 개념 정리 🔑 - 이벤트(event)

2024. 11. 11. 14:32·JavaScript

자바스크립트 이벤트(event)는 웹페이지에서 사용자가 어떤 행동을 할 때 발생하는 신호라고 생각하면 됩니다. 예를들어, 버튼을 클릭하거나 키보드 키를 누르거나, 화면을 스크롤 하는 등의 이벤트가 발생할 수 있습니다.

이때 자바스크립트는 이러한 이벤트를 감지 할 수 있습니다


이벤트를 등록하는 3가지 방법

인라인 (Inline) HTML 속성에 직접 등록하기 onclick, onmouseover 와 같은 속성

<button onclick="alert('버튼이 클릭되었어요!')">클릭</button>
  • 이 방법은 간단하지만, HTML과 자바스크립트 코드가 섞여 복잡성이 증가할 수 있어 권장되지 않습니다

Property Listener 자바스크립트 코드로 등록하기 element.onclick   

const button = document.getElementById("myButton");
button.onclick = function() {
  alert("버튼이 클릭되었어요!");
};
  • 이 방법은 HTML과 자바스크립트를 분리할 수 있어서 이전 방법보다는 관리가 용이합니다

addEventListener 사용하기 (추천⭐️)

const button = document.getElementById("myButton");
button.addEventListener("click", function() {
  alert("버튼이 클릭되었어요!");
});

# 제거
button.removeEventListener('click')
  • 이벤트를 여러 번 추가할 수 있습니다
  • 이벤트 제거 removeEventListener가 용이합니다
  • 같은 요소에 여러 종류의 이벤트를 쉽게 추가할 수 있습니다

다양한 이벤트 종류 - 마우스, 키보드, 포커스, form, progress

마우스 이벤트

  • mousedown - 마우스를 요소 안에서 누를 때 발생합니다
  • mouseup - 마우스를 요소 안에서 눌렀다가 떼었을 때 발생합니다
  • mouseenter - 마우스 포인터가 요소 안으로 진입할 때 발생합니다
  • mouseleave - 마우스 포인터가 요소 밖으로 벗어날 때 발생합니다
  • mousemove - 마우스 포인터가 요소 안에서 움직일 때 발생합니다
  • event.clientX , Y - 브라우저 화면 기준 X, Y 좌표를 반환합니다
  • event.pageX, Y - 전체 페이지 기준 X, Y 좌표를 반환합니다. 스크롤이 있는 긴 페이지에서도 위치를 정확히 파악할 수 있습니다
  • event.target.getBoundingClientRect() - 요소의 크기와 뷰포트 기준 상대적인 위치 정보를 반환합니다

키보드 이벤트

  • keypress - 키가 눌렸을 때 발생합니다. (특정 문자 키에 대해서만 발생하며, 최신 브라우저에서는 keydown을 권장합니다)
  • keydown - 키를 누르는 순간 발생합니다. 모든 키에 대해 이벤트가 발생합니다
  • keyup - 키를 눌렀다가 뗄 때 발생합니다
  • event.key - 사용자가 누른 키의 값을 반환합니다
  • event.keycode - 사용자가 누른 키의 ASCII 코드를 반환합니다. (keyCode는 오래된 방식이며, 현재는 event.key 사용이 권장됩니다.)

포커스 이벤트

  • focus - 입력란에서 값을 입력하기 위해 텍스트 박스를 클릭했을 때 발생합니다
  • blur - 입력을 마치고 텍스트 박스 밖의 영역을 클릭했을 때 발생합니다
  • change - value 값이 변경되었을 때 발생합니다. 예를 들어, 체크박스가 체크되거나 해제될 때 발생합니다

form 이벤트

  • submit - form 양식이 제출될 때 발생합니다

Progress 이벤트

  • load - 이미지가 정상적으로 로드되어 화면에 보일 수 있을 때 발생합니다.
  • error - 이미지가 로드되지 않고, 주소 오류나 네트워크 문제 등으로 로드에 실패했을 때 발생합니다.
저작자표시 비영리 변경금지 (새창열림)
'JavaScript' 카테고리의 다른 글
  • 면접에서 자주 출제될 것 같은..? 코딩 테스트 문제 풀이🥕
  • [Javascript] 콜백 함수 Callback function
  • ES6+ 자바스크립트 중요 개념 정리 🔑 - 데이터 속성 dataset
  • ES6+ 자바스크립트 중요 개념 정리 🔑 - DOM 선택 및 조작
Jelong
Jelong
커스텀 웹: https://jaehong-park.com Github: https://github.com/qkrwoghd04
  • Jelong
    24/7 Developer's Note
    Jelong
  • 전체
    오늘
    어제
    • 분류 전체보기
      • Software Engineering
      • Ubuntu
      • Network
      • JavaScript
      • Web
      • Interaction Design
      • React Native
      • React
      • Algorithm
      • Java
      • Database design
      • IT Trend
      • TroubleShooting
      • AWS
      • Interview
      • LG CNS AM CAMP 1기
  • 블로그 메뉴

    • 홈
    • 태그
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    ChatGPT
    heap
    frontend
    GPT-4
    prototyping
    css
    데이터 구조
    BST
    알고리즘
    AWS
    generic
    자바스크립트
    html
    mininet
    javascript
    알고리즘 분석
    미니넷
    블랙 박스 테스트
    이진트리
    자바
    React
    typescript
    JS
    java
    티스토리챌린지
    화이트 박스 테스트
    오블완
    Queues
    expo
    소프트웨어 공학
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
Jelong
ES6+ 자바스크립트 중요 개념 정리 🔑 - 이벤트(event)
상단으로

티스토리툴바