मैं एक इंटरमीटेंट स्क्रिप्ट त्रुटि को समझने की कोशिश कर रहा हूं जिसे मैं इंटरनेट एक्सप्लोरर 6 और विंडोज एक्सपी के तहत चल रहे जावास्क्रिप्ट गहन पतले-क्लाइंट एप्लिकेशन में देख रहा हूं। समस्या के मूल कारण है कि निम्नलिखित समारोह कॉल देता है एक null
मूल्य है (हालांकि यह एक त्रुटि के बिना सफल होने करता है):किस स्थिति में document.open() वापस शून्य होगा?
var doc = targetWindow.document.open("text/html","_replace");
कहाँ targetWindow
एक window वस्तु है।
न तो targetWindow
है और न ही targetWindow.document
null
है और इसलिए मैं समझने के लिए क्यों यह कॉल null
वापसी होगी संघर्ष कर रहा हूँ। the documentation की मेरी व्याख्या यह है कि इस विधि को कभी भी शून्य नहीं होना चाहिए।
यह कोड अपरिवर्तित और कई वर्षों तक पूरी तरह से काम कर रहा है - जब तक कि मुझे समझ में नहीं आता कि यह क्यों हो रहा है, मुझे यकीन नहीं है कि मैं इसे कैसे संभाल सकता हूं, या यह हो सकता है कि यह हो रहा है।
इस फ़ंक्शन को शून्य वापस करने का क्या कारण हो सकता है?
क्या आईई 6 का समर्थन करना बंद करना संभव है? आखिरकार, माइक्रोसॉफ्ट अब भी इसका समर्थन नहीं करता है। इसके अलावा, आईई 8 विंडोज एक्सपी पर ठीक काम करता है। यदि यह एक कॉर्पोरेट वातावरण है, तो आपको अंततः आईई 6 की असुरक्षा, त्रुटियों और सीमाओं से दूर अपग्रेड करने के लिए मनाया जाना चाहिए। –