페이지 뒤로 가기 방지.
가끔은 (정말 가끔이다 믿어도 좋다.)
특정 페이지에서 뒤로가기를 제한해야 하는 경우가 발생하는데! (인증이라던가, 인증이라던가, 인증이라던가)
그럴때 스크립트 단에서 해당 이벤트 자체를 취소하는 방법이다.
history api를 사용한 부분이 html5에서 동작하는 부분이며,
아래 else에 처리된 부분이 미지원 브라우저에서 동작하는 부분이다.
if (history.pushState !== undefined) { history.pushState(null, null, location.href); window.onpopstate = function (event) { history.go(1); }; } else { var storedHash = window.location.hash; function changeHashOnLoad() { window.location.href += "#"; setTimeout("changeHashAgain()", "50"); } function changeHashAgain() { window.location.href += "1"; } function restoreHash() { if (window.location.hash != storedHash) { window.location.hash = storedHash; } } if (window.addEventListener) { window.addEventListener("hashchange", function () { restoreHash(); }, false); } else if (window.attachEvent) { window.attachEvent("onhashchange", function () { restoreHash(); }); } $(window).load(function () { changeHashOnLoad(); }); }
'Script 이야기' 카테고리의 다른 글
스크립트 페이징 처리. (0) | 2015.10.20 |
---|---|
Ajax 호출로 갱신된 페이지 내부의 컨텐츠 뒤로 가기 버튼 눌렀을때 갱신 (0) | 2015.08.20 |
DatePicker 달력 일자에 특정 이미지 표시하기. (0) | 2015.06.25 |
정규식 관련 에러 리포트 (0) | 2012.11.14 |
jQuery Extend 날짜 형식 포멧 변경하기!! (0) | 2012.07.12 |