मुझे jQuery (1.6.x) के साथ अजीब समस्या है। मैं अपने पन्ने पर इस सरल फोन है:क्यों jQuery कभी-कभी window.onbeforeunload ओवरराइट करता है?
window.onbeforeunload = function() { return 'Are you sure ?'; };
लेकिन यह काम नहीं करता है, के रूप में मुझे पता चला गया है, jQuery window.onbeforeunload की सामग्री अधिलेखित कर देता है क्योंकि। जे एस कंसोल में, मैं देख सकता हूँ कि window.onbeforeunload jQuery कोड का टुकड़ा शामिल हैं:
function(e) {
// Discard the second event of a jQuery.event.trigger() and
// when an event is called after a page has unloaded
return typeof jQuery !== "undefined" && (!e || jQuery.event.triggered !== e.type) ?
jQuery.event.handle.apply(eventHandle.elem, arguments) : undefined;
};
वहाँ एक रास्ता क्यों और जहां jQuery मेरी onbeforeunload समारोह अधिलेखित कर देता है मैं मिल सकता है है? जब मैं बस jsfiddle को चलाने के लिए बस jsfiddle चलाने की कोशिश करता हूं और मेरे ऑनबर्ननलोड फ़ंक्शन के साथ, यह अपेक्षा के अनुसार काम करता है।
किसी भी संकेत की सराहना की जाएगी। अग्रिम में धन्यवाद।
संपादित करें:
शायद ज़रुरत पड़े, किसी का उपयोग कर पता चलता है:
$(window).bind('beforeunload', function() { return 'Are you sure';});
मैं पहले से ही यह कोशिश की है और यह शुद्ध जावास्क्रिप्ट का उपयोग कर के रूप में एक ही तरह से व्यवहार करता है।
क्या आप इसके बजाय jQuery 'unload' विधि का उपयोग कर सकते हैं? http://api.jquery.com/unload/ –
मैं अपने स्वयं के फ़ंक्शन को 'onbeforeunload' पर सफलतापूर्वक लागू करने में सक्षम हूं और मैं jQuery 1.6 का उपयोग करता हूं। क्या कोई और जानकारी या कोड है जो आप प्रदान कर सकते हैं? क्या यह सभी ब्राउज़रों में काम नहीं करता है? http://jsfiddle.net/Kai/QgVE8/ – Kai
आप अंतरिक्ष में चिल्ला रहे हैं। एक परीक्षण केस प्रदान करें जो इस समस्या को पुन: उत्पन्न करता है और हम सहायता कर सकते हैं। – mekwall