'window event'에 해당되는 글 1건

  1. 2008.06.05 onunload, onbeforeunload 시 새로고침 문제
2008.06.05 01:15

onunload , onbeforeunload 이벤트가 창을 닫을 때 이벤트가 실행된다.
문제는 저 이벤트는 새로고침 시에도 발생하므로, 로그인 중복체크 등이나 사용자 세션을 강제로 끊어줄 때 등등의 사용에 적합하지 않는다. 대신 아래와 같이 사용하면, 이벤트 발생이 새로고침인지 다른사이트 이동인지 알 수 있다.

<script language="javascript">
function Exit() {
    if (self.screenTop > 9000) {
 alert('닫힘');
        // 브라우저 닫힘
    } else {
        if(document.readyState == "complete") {
   alert('새로고침');
            // 새로고침
        } else if(document.readyState == "loading") {
   alert('이동');
            // 다른 사이트로 이동
        }
    }
}
</script>
<script language="javascript" event="onunload" for="window">
    Exit();
</script>


다만, 글쓰기 같은 페이지에는 새로고침을 확인해서 입력되고 있는 내용이 사라지지 않도록 확인해 주는 센스가 필요하겠다.
Posted by 부니기

티스토리 툴바