이 메시지는 외부 자료를 칸아카데미에 로딩하는 데 문제가 있는 경우에 표시됩니다.

If you're behind a web filter, please make sure that the domains *.kastatic.org and *.kasandbox.org are unblocked.

주요 내용

DOM 이벤트 타입

브라우저는 많은 이벤트를 발생시킵니다. MDN에서 전체 목록을 확인할 수 있습니다. 그러나 가장 일반적인 이벤트 타입과 이벤트 이름은 다음과 같습니다.
  • 마우스 이벤트(MouseEvent): mousedown, mouseup, click, dblclick, mousemove, mouseover, mousewheel, mouseout, contextmenu
  • 터치 이벤트 (TouchEvent): touchstart, touchmove, touchend, touchcancel
  • 키보드 이벤트 (KeyboardEvent): keydown, keypress, keyup
  • 폼 이벤트 (form events): focus, blur, change, submit
  • 윈도우 이벤트 (window events): scroll, resize, hashchange, load, unload
각 이벤트가 서로 비슷해 언제 어떤 이벤트를 써야 하는지 헷갈릴 수 있습니다.
터치 이벤트는 스마트폰이나 터치스크린 노트북같이 터치가 가능한 기기에서만 발생합니다. click이나 mousemove같은 마우스 이벤트는 거의 모든 브라우저와 기기에서 발생합니다. 하지만 대부분의 스마트폰에서 mouseover 이벤트는 발생하지 않습니다. 손가락이 위에 있는지 알 수 없기 때문입니다. 손가락이 화면 위에 떠있는지 확인하는 센서를 추가한 스마트폰이 나오고 있으니, 미래에는 더 많은 스마트폰에서 mouseover 이벤트를 발견할 수 있을 것입니다.
대부분의 경우 마우스 이벤트가 터치 이벤트보다 더 범용이므로 마우스 이벤트를 듣는 것이 좋습니다.