써먹는 웹개발

[Jquery] 레이어팝업 창 열기 횟수만큼 클릭 이벤트 호출되는 현상 해결방법 본문

웹개발/Js & Jquery

[Jquery] 레이어팝업 창 열기 횟수만큼 클릭 이벤트 호출되는 현상 해결방법

kmhan 2023. 6. 19. 17:30


728x90
반응형

1. 현상 : 레이어팝업 창 열기(+닫기) 횟수만큼 클릭 이벤트 호출되는 현상

2. 원인 : 이벤트 unbind를 먼저 해야된다.

3. 이론 : jquery 1.7버전 이후부터 unbind 대신 off 사용가능

4. 해결방법 : 소스

 - 수정 전

1
$(document).on("click","버튼 선택자",function(event){...});
cs

 

 - 수정 후

1
$(document).off("click","버튼 선택자").on("click","버튼 선택자",function(event){...});
cs

 

 - 소스 중복 제거 : 추천 방법

1
팝업 선택자.find("버튼 선택자").off("click").on("click",function(){...});
cs

 

※ event.stopPropagation()은 클릭 행위를 중복해도 이벤트 한번만 호출할 수 있게 막아주는 이벤트로 알고 있다.

  즉, 위의 현상을 해결해줄수없다.

728x90
반응형


Comments