2012-04-25 5 views
39

gmail에서 페이지를 떠나기 전에 사용자에게 확인을 요청하는 방법은 무엇입니까? 탭/브라우저 종료 전 확인

나는 여러 장소에서이 질문을 검색하지만, 언급하는 모든 자바 스크립트 window.unload & window.onbeforeunload의 사용이다. 또한 크롬이 차단되면 대부분의 경우 크롬에서 작동하지 않습니다.

+1

무엇을 시도 했습니까? 무엇이 실패합니까? – Joseph

+0

나는 window.unload & window.onbeforeunload를 시도했으나 필요에 따라 작동하지 않았다. –

+0

가능한 [탭을 닫기 전에 확인 상자] (http://stackoverflow.com/questions/2452963/confirm-box-before-closing-a-tab) –

답변

74

이 시도 :

여기
<script> 
window.onbeforeunload = function (e) { 
    e = e || window.event; 

    // For IE and Firefox prior to version 4 
    if (e) { 
     e.returnValue = 'Sure?'; 
    } 

    // For Safari 
    return 'Sure?'; 
}; 
</script> 

는 작업 jsFiddle

+1

또한 사용자 클릭으로부터 발생했기 때문에이 브라우저에서 비활성화되지 않습니다. – gopi1410

+0

고마워요! 이것이 내가 필요한 것입니다. btw, 바이올린 데모를 아주 좋아합니다. –

+0

안녕하세요 .. 코드가 작동하지만 사용자가 브라우저의 닫기 버튼을 클릭했는지 또는 탐색 버튼을 클릭하여 다른 페이지로 이동했는지 구분할 수 없습니다. – user3217843

6

이 시도입니다 : 여기 MDN

<script> 
    window.onbeforeunload = function(e) { 
     return 'Dialog text here.'; 
    }; 
</script> 

대한 추가 정보를 원하시면.

1

답변 세트에 대한 의견을 으로 변경합니다. 확인. 대부분의 사용자는 버튼과 일부 링크 클릭이 허용되어야하는지 묻습니다. 여기에 하나 더 많은 라인이 기존 코드에 추가됩니다. 버튼을 허용 할 링크

<script type="text/javascript"> 
    var hook = true; 
    window.onbeforeunload = function() { 
    if (hook) { 

     return "Did you save your stuff?" 
    } 
    } 
    function unhook() { 
    hook=false; 
    } 

호출을 빼내() onclick을. 예 :

<a href="#" onClick="unhook()">This link will allow navigation</a> 
관련 문제