मुझे किसी पृष्ठ को छोड़ने पर उपयोगकर्ता को अपना काम सहेजने के लिए संकेत देना होगा। मैंने पहले से लोड करने की कोशिश की है, लेकिन मुझे एक स्टाइल प्रॉम्प्ट दिखाने की ज़रूरत है जो सामान्य संवाद बॉक्स नहीं है। फेसबुक ने इसे हासिल करने में कामयाब रहा है (यदि आपके पास एक फेसबुक खाता है, तो अपनी प्रोफाइल जानकारी संपादित करें और बिना किसी सहेजे बिना किसी अन्य पेज पर जाएं और आपको स्टाइल प्रॉम्प्ट मिलता है)। मैंने jquery unload को भी आजमाया है लेकिन प्रक्षेपण से अनलोड ईवेंट को रोकने का कोई तरीका प्रतीत नहीं होता है।जब वे कोई पृष्ठ छोड़ते हैं तो उपयोगकर्ता को सहेजने के लिए उपयोगकर्ता को सूचित करना
उत्तर
क्या फेसबुक कर रही है को करीब से देख लें: जब, पता बार में एक नया URL दर्ज एक बुकमार्क पर क्लिक करें, या वापस नेविगेट अगर आप पेज पर एक लिंक क्लिक आपको एक संदेश मिलता है, लेकिन कुछ भी नहीं आपके ब्राउज़र का इतिहास
यदि यह आपके लिए काम करता है, तो यह करना आसान है: पृष्ठ पर प्रत्येक लिंक पर click
ईवेंट हैंडलर जोड़ें, और इससे अपनी शैलीबद्ध पुष्टि को ट्रिगर करें। चूंकि इन हैंडलर को से पहले कॉल किया जाएगा पृष्ठ के भीतर से किसी भी नेविगेशन ईवेंट से शुरू होने के बाद, आप हैंडलर में जो कुछ भी चाहते हैं, वह कर सकते हैं - डेटा बचाएं, पूरी तरह से ईवेंट रद्द करें, इच्छित गंतव्य रिकॉर्ड करें और इसे स्थगित करें 'जब तक वे पुष्टि नहीं करते ...
हालांकि, अगर आपको आवश्यकता है या नेविगेशन घटनाओं का जवाब देना चाहते हैं, तो आपको onbeforeunload
का उपयोग करना होगा। और हां, संवाद गड़बड़ है, और आप इस कार्यक्रम को रद्द नहीं कर सकते हैं - यही वह कीमत है जो हम सभी घृणास्पद बेवकूफों के लिए भुगतान करते हैं जो '9 0 के दशक में ऐसी सुविधाओं का दुरुपयोग करते हैं। क्षमा करें ...
यदि यह पर्याप्त नहीं है तो आप अन्य प्रयोजनों के लिए एक विंडो जोड़ सकते हैं। उपयोगकर्ताओं को अन्य कार्यक्रमों के मामले में उपयोगकर्ताओं को अपना डेटा खोने से रोकने के लिए। – markus
लिंक और ऑनबेरनलोड के साथ बेल्ट-एंड-ब्रेसिज़ के लिए +1। हालांकि, इसके साथ भाग लें और केवल इसका उपयोग करें जहां महत्वपूर्ण डेटा हानि का वास्तविक खतरा है। व्यक्तिगत रूप से मुझे लगता है कि एसओ का थोड़ा परेशान होना चाहिए! – bobince
मैं प्रत्येक सिंगल लिंक पर इवेंट हैंडलर पंजीकृत करने के बजाय इवेंट प्रतिनिधिमंडल का उपयोग करूंगा ... – James
चयनित उत्तर अच्छा है लेकिन मुझे अभी भी विवरण के लिए खोदना पड़ा है। आप onbeforeunload घटना का उपयोग करना चाहते हैं, तो यहां कुछ नमूना कोड:
<script>
window.onbeforeunload= function() { return "Custom message here"; };
</script>
दूसरों को यहाँ के जवाब मैं एक महान छोटी स्क्रिप्ट विकसित पर सुधार करने के लिए।
$('.measurement_value').change(function() {
$(window).bind('beforeunload', function(){
return 'You have unsaved changes, are you sure you want to leave?';
});
$('#MeasurementAdminEditForm').submit(function(){
$(window).unbind('beforeunload');
});
$('#CancelButton').click(function(){
$(window).unbind('beforeunload');
});
});
मेरी फार्म तत्वों में से प्रत्येक को मैं 'measurement_value' के एक वर्ग देने के लिए और उसके बाद ही beforeunload लोड करता है, तो उन तत्वों में से एक बदल जाते हैं। इसके अलावा मैं अपने फॉर्म जमा करने और रद्द बटन के क्लिक पर पहले से लोडलोड को अनलोड करता हूं।
उम्मीद है कि यह किसी और की मदद करेगा।
- 1. अपवाद फेंकना और उपयोगकर्ता को सूचित करना
- 2. उपयोगकर्ता को पृष्ठ
- 3. उपयोगकर्ता को पृष्ठ
- 4. फेसबुक ऐप, उपयोगकर्ता को सूचित करें
- 5. जब कोई उपयोगकर्ता
- 6. जब कोई उपयोगकर्ता 'बैक'
- 7. जब कोई उपयोगकर्ता आईओएस
- 8. उपयोगकर्ता को चेतावनी देने के लिए सर्वोत्तम अभ्यास वे
- 9. जब उपयोगकर्ता बैक बटन से आता है तो पृष्ठ को फिर से लोड करना
- 10. जब कोई उपयोगकर्ता हबोट
- 11. एंड्रॉइड: एक नए संस्करण के उपयोगकर्ता को सूचित करें
- 12. उपयोगकर्ता को
- 13. जब उपयोगकर्ता को यूआई दिखाया जाता है तो ईवेंट?
- 14. जब उपयोगकर्ता
- 15. क्या उपयोगकर्ता जावास्क्रिप्ट को पहचान सकता है जब उपयोगकर्ता दस्तावेज़ लोड करना बंद कर देता है?
- 16. mysql उपयोगकर्ता बनाते हैं तो
- 17. जब उपयोगकर्ता पृष्ठ के नीचे पहुंचता है तो div को कैसे दिखाया जाए?
- 18. उपयोगकर्ता को अजाक्स
- 19. जब आप उपयोगकर्ता को नई सामग्री लोड करने के लिए किसी पृष्ठ के अंत तक पहुंचते हैं तो आप जावास्क्रिप्ट (AJAX) फ़ंक्शन को कैसे कॉल करते हैं?
- 20. रेल: उपयोगकर्ता की आईडी को ट्रैक करना
- 21. जब उपयोगकर्ता एएससी
- 22. जब उपयोगकर्ता
- 23. जब आप मूल गतिविधि की स्थिति को सहेजने के लिए बाध्य होते हैं तो आप खंड लेनदेन को कैसे संभालेंगे?
- 24. उपयोगकर्ता जेनकिन्स दास को ऑफ़लाइन रखें जब उपयोगकर्ता विंडोज
- 25. जब उपयोगकर्ता
- 26. किसी उपयोगकर्ता को सूचित करने के लिए django-अधिसूचना का उपयोग कैसे करें
- 27. उपयोगकर्ता को UITableView सेल
- 28. फ़ाइल को सहेजने के लिए
- 29. उपयोगकर्ता के उपयोगकर्ता '@%' और 'उपयोगकर्ता' @ 'localhost' समान नहीं हैं?
- 30. जब उपयोगकर्ता व्यू कंट्रोलर
यह देखने के लिए जा रहा है कि स्टैक ओवरफ़्लो किस प्रकार उपयोग करता है। जब कोई छोड़ रहा है, तो वे समझने में सक्षम हैं, भले ही वे किसी अन्य स्टैक ओवरफ़्लो पृष्ठ के अलावा कहीं और जा रहे हों। इसलिए, वे इसे क्लाइंट-साइड कर रहे होंगे। –
स्टैक ओवरव्लो नियमित विंडो का उपयोग करता है। ऐसा लगता है कि ऐसा लगता है। – markus
क्या आपने "onbeforeunload" ईवेंट पर एक विशेष div दिखाने की कोशिश की है? यह काम कर सकता है। – BYK