onbeforeunload 이벤트 사용 시이동만 막으려고 하였으나

a 링크를 이용한 javascript:함수   <- 형식 까지 모두 이동 이벤트 발생으로 제대로 사용 할 수 없다

이를 제대로 쓰기 위해서는

이벤트가 발생하지 말아야 되는 a 링크에 대해서는 아래와 같이 사용하면 컨트롤이 가능하다.

 

<a href="http://freeutil.net">실제 이동용 </a>

<a onclick="NoPrompt()"  href="javascript:alert('test');">함수 호출용 </a>

 

<script>

// Allow the user to be warned by default.

기본 이벤트 발생 조건값

var allowPrompt = true;

 

// 페이지 전환에 대한 모든 이벤트 발생 대응

window.onbeforeunload = WarnUser;

 

// 이벤트 조건

function WarnUser(){   

    if(allowPrompt)   {      

        event.returnValue = "You have made changes. They will be lost if you continue.";   }   

    else   

    {      // Reset the flag to its default value.      

        allowPrompt = true;   

    }

}

 

// 이벤트 발생 막기

function NoPrompt(){   

    allowPrompt = false;

}

</script>

이 게시물을..