jquery 자식까지 모두 선택, 부모만 선택 mouseenter, mouseover

jquery 자식까지 모두 선택, 부모만 선택 mouseenter, mouseover

QA

jquery 자식까지 모두 선택, 부모만 선택 mouseenter, mouseover

본문

3717369378_1544791669.2058.png

위스크립트 기능은 file_btn 클래스를 클릭할 때에는 beforeunload 기능을 중지하는 것입니다.

beforeunload 기능은 무언가를 작성하는 페이지에서 벗어나려고 할 때 alert창이 떠서 정말 나갈것인지 묻는 기능을 합니다.

파일 다운 버튼의 링크는 다른곳으로 설정되어있기 때문에 이 버튼을 누르면 페이지가 이동하지는 않지만 링크가 다른 주소이기 때문에 alert창이 뜨게 됩니다. 이를 막기 위한 스크립트가 위 스크립트입니다.

 

그런데 file_btn 안쪽에 있는 모든 엘리먼트에 대해서 위 스크립트가 적용되어야 할 것 같은데 그렇지 않습니다. 이미지를 클릭하면 바로 다운되는 것이 아니고 alert창이 뜨게 됩니다.

 

file_btn클래스를 갖고있는 태그와 그 안쪽의 모든 엘리먼트에 제대로 적용하려면 어떻게 해야 할까요


*이게 자꾸 해보니까 어쩔땐 되고 어쩔땐 안되네요... 마치 .on('mouseenter') 가 늦게 작동하는 느낌입니다. 

이 질문에 댓글 쓰기 :

답변 1

아이쿠 이런...
 

jQuery mouseover와 mouseout은 한세트이며, jQuery mouseenter와 mouseleave가 한세트입니다.

이들의 차이점은 자식 엘리먼트까지 인식하느냐에 차이가 있습니다.

mouseover, mouseout은 자식 엘리먼트에 접근했을 때도 동작하는 반면, mouseenter와 mouseleave는 자식 엘리먼트에는 동작하지 않습니다.

 

https://www.xpressengine.com/qna/22704210

답변을 작성하시기 전에 로그인 해주세요.
전체 123,161 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT