2012-03-23 3 views
7

मैं MDN और W3C संसाधनों को देख रहा हूं कि यह पता लगाने के लिए कि ownerDocument क्या है और यह कैसे काम करता है?जब node.ownerDocument window.document नहीं है?

जैसा कि मैंने किसी भी स्थिति node.ownerDocument == window.document में परीक्षण किया था। तो जब यह संपत्ति window.document नहीं है?

क्या आप इसे समझा सकते हैं?

+1

वही सवाल मेरे लिए हुआ! –

उत्तर

6

एक तरीका यह है कि अगर नोड को आईफ्रेम या secondary browser window से प्राप्त किया गया था।

एक और तरीका यह है कि यह HTTP स्रोत via AJAX से प्राप्त XML दस्तावेज़ से नोड है।

+0

पहला परिदृश्य सही नहीं दिखता है। एक और विंडो/iframe विंडो ऑब्जेक्ट के अंदर अलग है। – Mohsen

+1

@ मोहनन: ठीक है, बिल्कुल। इसलिए यदि बाहरी दस्तावेज़ में 'iframe' नामक एक जेएस वैरिएबल है जो आईफ्रेम को इंगित करता है, तो बाहरी दस्तावेज़' iframe.contentWindow.document.getElementsByTagName ('body') [0] .ownerDocument === iframe.contentWindow देखेंगे। दस्तावेज़', * नहीं * 'iframe.contentWindow.document.getElementsByTagName ('body') [0] .ownerDocument === window.document', क्योंकि iframe की एक अलग 'विंडो' ऑब्जेक्ट है (जिसे बाहरी दस्तावेज़ के रूप में संदर्भित करता है 'iframe.contentWindow')। और, समान रूप से द्वितीयक ब्राउज़र विंडोज़ के साथ। – ruakh

+0

क्या आप दूसरे परिदृश्य को समझा सकते हैं? – Jessica

संबंधित मुद्दे