Touch, Mouse 이벤트 함께 다루기 (feat. dropdown)
문제상황 dropdown 컴포넌트를 만들었는데, focus가 다른곳으로 이동하면 펼쳐져있던 dropdown이 접혀져야 해서 이벤트 발생시 접히도록 했다. 그랬더니 펼쳐져 있는 항목 중 하나를 했을때, 위에서 설정한 이벤트가 먼저 발생하면서 이벤트가 호출되지 않는 이슈가 문제였다. dropdown_비정상동작.gif 문제의 코드 TL;DR Touch, mouse 이벤트 순서 touchstart touchmove touchend mouseover mousemove mousedown mouseup click 해결방법 시 처리해줘야 하는 이벤트 핸들러를 click 이 아닌 에서 처리해준다. dropdown_정상동작.gif Dropdown CodeSandbox Touch and mouse 이벤트 그러면 지금부터는 web.dev 문서를 살펴보면서 알게된 이벤트의 도입 배경과 touch, mouse 이벤트를 함께 다루기 위해 필요한 주의 사항을 좀 정리해보려고 한다. Introduct…