iframe을 이용하는 화면에서 sesstion timeout이 발생했을 때 로그인 페이지로 이동해야하는데
iframe 영역안에서 login페이지로 가는 경우가 있습니다.
login페이지의 js에 아래와 같이 작성하면 됩니다.
$(document).ready(function(){
if ( self !== top ) {
top.location.href = "/";
}
});
$(document).ready(function(){...});: 문서(페이지)가 로드될 때 실행되는 jQuery의 함수입니다. 이는 페이지의 모든 요소가 로드된 후에 스크립트가 실행되도록 보장합니다.
if (self !== top) { ... }: 현재 페이지(self)가 최상위 레벨 페이지(top)가 아닌 경우를 검사합니다. 이는 현재 페이지가 iframe 내부에서 실행 중이거나 다른 프레임 안에서 실행 중인 경우를 의미합니다.
top.location.href = "/";: 현재 페이지가 최상위 레벨 페이지가 아닌 경우, 최상위 레벨 페이지로 리디렉션합니다. 여기서는 루트 경로("/")로 이동하도록 설정되어 있습니다.
'Frontend > javaScript' 카테고리의 다른 글
[JavaScript] 호이스팅(Hoisting) (0) | 2024.07.05 |
---|---|
[javaScript] file-saver 파일 다운로드 (0) | 2023.10.02 |
checklist (vue3) (0) | 2023.07.20 |
요소 width 가져오는 속성과 메서드 (스크롤바 너비) (0) | 2023.07.05 |
절대 위치 구하기 (제이쿼리 사용하지 않고) (0) | 2023.06.28 |