2009-10-14 7 views
20

मैं उपयोगकर्ता से पूछना चाहता हूं कि वह वास्तव में पृष्ठ छोड़ना चाहता है या नहीं, जब वह Google डॉक्स में किए गए करीबी बटन पर क्लिक करता है। Jquery का उपयोग कर ऐसा कैसे करें?Jquery विंडो बंद होने से रोकें

उत्तर

28

आप विंडो के onbeforeunload संपत्ति को फ़ंक्शन में सेट करते हैं।

This post has a good example on how to do it.

या एक और उदाहरण:

<script language="JavaScript"> 
    var needToConfirm = true; 

    window.onbeforeunload = confirmExit; 
    function confirmExit() 
    { 
    if (needToConfirm) 
     return message to display in dialog box; 
    } 
</script> 

... 

<input type="Submit" value="Save" onclick="needToConfirm = false;" /> 


और अपने प्रपत्र आप कर सकते हैं के लिए needToConfirm स्थापित करने के लिए: आप के लिए

$(document).ready(function() { 
    $(':input', document.myForm).bind("change", function() { needToConfirm = true; }); // Prevent accidental navigation away 
}); 
-2

JQuery यूआई उपयोगी हो सकता है - this link देखते हैं। यह कुछ अलग-अलग प्रकार के संवाद दिखाता है - जो आप चाहते हैं वह है "मॉडल पुष्टिकरण" मुझे लगता है। ध्यान रखें, हालांकि, JQuery UI लाइब्रेरी बहुत भारी है, इसलिए हो सकता है कि आपके लिए एक और bespoke विकल्प देखने के लिए बेहतर होगा (कुछ JQuery पुष्टि मॉड्यूल की खोज करके आए थे)। मैं उन समाधानों की गुणवत्ता के लिए झुकाव नहीं कर सकता क्योंकि मैंने कभी कोशिश नहीं की है।

+2

लगभग 7 साल पहले एक पोस्ट पर डाउन वोट क्यों ?? – n00dle

3

मेरे लिए काम करने के बाद;

$(window).unload(function() { 
       if(event.clientY < 0) { 
        //do whatever you want when closing the window.. 
       } 
      }); 
+2

मुझे लगता है कि 'preunload' घटना उपयोगकर्ता से पूछने के लिए और अधिक उपयोगी है कि वह अपने परिवर्तनों को सहेजना चाहता है: '$ (विंडो)। बाइंड ('preunload', function() {...});' –

+0

आह! ऐसा लगता है कि यह पिछले कुछ वर्षों में बदल गया है ... इसलिए 2011 में यह अभी भी काम कर रहा है। –