क्षमा करें यदि यह सरल है; मैं JQuery के लिए नया हूँ। मैंने this जैसे प्रश्नों को खोज और पाया है, लेकिन वे मेरे प्रश्न का काफी जवाब नहीं दे रहे हैं।ब्राउज़र स्टॉप बटन पर कार्रवाई करें
मैं JQuery का उपयोग कर रहा कार्रवाई है कि काफी समय लग के लिए एक गूंगा प्रगति संकेतक दिखाने के लिए:
$(document).ready(function() {
$('form').submit(function() {
$('#progress').show();
});
});
उपयोगकर्ता प्रपत्र बटन क्लिक करता है, मैं तो बस एक एनिमेटेड GIF के साथ एक div दिखा। यह div पृष्ठ के दृश्य के शेष समय के लिए दृश्यमान है। फ़ॉर्म की कार्रवाई पूरी होने के बाद, एक नया पृष्ठ लोड होता है।
यह अच्छी तरह से काम करता है, लेकिन यदि कार्रवाई पूर्ण होने से पहले ब्राउज़र में उपयोगकर्ता "रोक" पर क्लिक करता है तो क्या होगा? मैं div कैसे गायब कर सकता हूँ? क्या इस घटना को पकड़ने का कोई तरीका है, या क्या पूरी स्थिति को संभालने का कोई बेहतर तरीका है?
आपकी मदद के लिए धन्यवाद।
यह संभावना नहीं है कि आप उस घटना पर कब्जा कर सकते हैं:
आप क्या कोशिश कर सकते हैं प्रगति संवाद छोटे समय समाप्ति के बाद गायब करने के लिए है। लेकिन AJAX का उपयोग करके अपना फॉर्म डेटा जमा करना बेहतर तरीका होगा। शायद [इसे देखें] (http://stackoverflow.com/questions/1960240/jquery-ajax-submit-form) – musefan
एक "ऑनस्टॉप" ईवेंट है, यह क्रॉस-ब्राउज़र नहीं है और बहुत विश्वसनीय नहीं है। – Xotic750
क्या आप सिर्फ div का चयन कर सकते हैं और इसे हटा सकते हैं? कुछ ऐसा: '$ ('# प्रगति')। हटाएं()' इसे डीओएम से बाहर ले जाएगा। यह जो कुछ भी हो रहा है उसे रोक नहीं पाएगा। ऐसा करने के लिए आप कार्रवाई को कैसे चला रहे हैं इस पर आधारित अन्य कार्रवाइयों की आवश्यकता होगी। – ckersch