주요 내용
컴퓨터 프로그래밍
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
이벤트를 발견할 수 있을 것입니다.대부분의 경우 마우스 이벤트가 터치 이벤트보다 더 범용이므로 마우스 이벤트를 듣는 것이 좋습니다.