2012-04-25 20 views
39

जीमेल में पृष्ठ छोड़ने से पहले उपयोगकर्ता से पुष्टि कैसे पूछें?टैब/ब्राउज़र बंद करने से पहले पुष्टि

मैं विभिन्न स्थानों में इस सवाल के लिए खोज की है, लेकिन सभी यह है कि वे उल्लेख जावास्क्रिप्ट 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

बहुत बहुत धन्यवाद! यही मुझे चाहिए। बीटीडब्ल्यू, बेवकूफ डेमो से प्यार है, ठीक वही मैं चाहता था। –

+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> 
संबंधित मुद्दे