테스트 사이트 - 개발 중인 베타 버전입니다

Back Forward Cache 이슈 리로드 관련 채택완료

qwaszx 4년 전 조회 1,882

팝업레이어를 사용중인데 n시간 동안 다시 보지 않기로 팝업을 닫아도

다른 페이지 이동 후 뒤로가기로 메인페이지로 가면 팝업이 그대로 나타납니다

스크립트로 쿠키 확인해서 display none도 줘보고 해봤는데

더 찾아보니 back forward cache라는게 있더라구요 그래서 아래와 같이

</p>

<p>window.onpageshow = function(event) {

    if ( event.persisted || (window.performance && window.performance.navigation.type == 2)) {

        window.location.reload();

    }

};</p>

<p>

이걸로 해결은 했는데 문제는 반응이 눈에 띌 정도로 느립니다ㅠㅠ

처음 쇼핑몰 접속할때도 1초정도 딜레이가 있는데

이게 뒤로가기로 가면 처음에 딜레이가 거의 없이 페이지(팝업O)가 떴다가 1~2초 후에

그제야 새로고침이 완료되면서 팝업이 사라지니 성격 급한 사람은 많이 거슬리겠더라구요

혹시 팝업레이어 쓰시는 다른 분들은 그냥 놔두시나요..?

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

채택된 답변
+20 포인트
e
4년 전

뒤로가기는 브라우저에 저장되어 있는 페이지가 보이는 겁니다.

즉, 새로고침이 이루어지지 않은 거죠.

그래서 위의 소스가 뒤로가기를 하면 강제로 새로고침을 하는겁니다.

새로고침을 하면 당연히 해당 페이지를 다시 로딩하는 거라서,

원래 페이지 로딩 시간이 걸리는거죠.

일반적으로 보안상 문제만 없다면, 뒤로가기까지 제어를 잘 하지는 않습니다.

 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

q
qwaszx
4년 전
ㅠㅠ그렇군요
대표님이 팝업을 닫았는데도 뒤로 가면 자꾸 뜬다고ㅠㅠ
거슬린다고 하셔서..
e
eyekiss
4년 전
올드하신 분들이 뒤로가기를 자꾸 누르시죠..
일반적인 고객은 뒤로가기로 이동을 잘 하지는 않습니다.
닫기 위해서라면 몰라도..^^;;

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인