본문 바로가기
Javascript

mouseenter | movesover 의 차이점

by 🐬마뇽뇽 마뇽🦄 2022. 9. 5.
728x90

mouseenter | movesover 의 차이점

mouseOver or mouseOut : 지정된 태그 요소(혹은 자신)는 물론이며, 자식 요소가 있다면 해당 자식요소의 영역까지 포함됩니다.
mouseEnter or mouseLeave : 지정된 태그 요소(혹은 자신)의 영역에만 해당되며, 만약 자식요소가 있다면 해당 자식요소의 영역은 제외됩니다.


이를 더 쉽게 표현하기 위해 코드펜으로 예시를 가져와 보았습니다.

01. mouseover | mouseout 이벤트

1번의 경우는 마우스를 우선 회보라색 div 범위내에 올리면 p 태그로 감싸여 있는 글씨 부분의 배경이 보라색으로 변하는걸 확인하실 수 있습니다.
그리고 다시 보라색 영역인 p 태그 영역으로 마우스를 가져다 놓으면 최종적으로 파란색 선이 생기는걸 확인하실 수 있습니다.
결론은 회보라색 div 영역에만 마우스 이벤트가 발생 된다는것을 확인할 수 있습니다.

02. mouseenter | mouseleave 이벤트

2번의 경우는 우선 마우스를 올리면 글씨 부분의 배경이 바뀌는게 1번과 똑같습니다. 그러나 글씨 부분까지 마우스가 들어가도 변하지 않습니다.
2번의 div를 완전히 빠져나와야 마우스가 나갔을 때의 이벤트가 실행됩니다. 결론은 p 태그까지도 영향을 끼친다는 것을 확인할 수 있습니다.

결론 : 자식요소까지 영역을 넓히려면 mouseenter/mouseleave 이(가) 아닌, mouseover/mouseout 를 사용해야 한다는 것을 알 수 있습니다.

728x90

'Javascript' 카테고리의 다른 글

오답노트  (7) 2022.10.02
오답노트  (5) 2022.10.02
요소 크기 메서드 정리  (9) 2022.09.01
search()  (8) 2022.08.22
match()  (6) 2022.08.22

댓글


고양이 고양이
고양이 고양이
고양이 고양이