본문 바로가기
웹3

사이트 접속시 떠있는 2개의 팝업

by 웹 부가설명 2022. 11. 7.

  1    사이트 접속했을때 떠있는 팝업

 

사이트 접속했을때 팝업을 띄우는 코드

 

 

  2    스크롤 디테일

 

만들어야하는 최종 형태

조건1 : 사이트에 접속했을때 팝업2개가 동시에 떠있어야 합니다.

조건2 :  팝업이 떠있을때는 html스크롤이 없어야 합니다.

조건3 :  동시에 떠있던 팝업 중, 팝업2번의 X버튼을 누르면  남아있는 팝업1번의 html스크롤이 없어야 합니다.

 

 

 

 

스크롤 on/off 넘버없이 사용했을때

 

문제점

  조건 : 팝업이 떠있을때는 html 스크롤이 없어야 합니다.

  문제점 : 동시에 떠있던 팝업중 팝업2번 X버튼을 누르면, 팝업1번이 남았을때 팝업1번과 함께 html 스크롤이 나오게 됩니다.

 

  원인 : addclass를 추가할때 팝업별로 추가되고 지워지도록 적어놓지 않으면 아래 영상과 같은 결과가 나오게 됩니다.

 

문제가 생기는 원인

 

  사이트에 접속하는 순간 아래 코드로 인해

  html에는 popup-actived라는 class가 강제로 들어간 상태입니다.

 

 

팝업 X버튼 class

  팝업2 X버튼 즉,  .popup__btn-close를 클릭했을때 아래 함수식이 실행됩니다.

식을 잘 살펴보면 .popup__btn-close를 클릭하면

사이트 접속했을때 html강제로 들어갔던  popup-actived

강제로 지우는  실행문(removeClass("popup-actived"))이 실행됩니다.

 

즉, 팝업2번 X버튼을 눌렀을때 html 강제로 들어갔던  popup-actived가 빠지게 되면서팝업1번만 남았을때 hml 스크롤이 보이게 됩니다.

 

 

 

 

 

해결방안

풀이

 

popup-1 안에 있는 .popup__btn-close 를 클릭하면,

html 에 있는 popup-1-actived 라는 class가 강제로 지워진다.

 

popup-2 안에 있는 .popup__btn-close 를 클릭하면,

html 에 있는 popup-2-actived 라는 class가 강제로 지워진다.

 

 

 

 

 

결과

 

 

'웹3' 카테고리의 다른 글

매개변수를 사용하는 이유  (0) 2022.11.06