2016-09-07 12 views
13

Document.importNode in specificationDocument.importNode वी.एस. Node.cloneNode (वास्तविक उदाहरण)

Node.cloneNode in specification

यह दो तरीकों समान रूप से काम करते हैं। कृपया मुझे असली उदाहरण दें जिसमें मैं इस तरीकों के बीच अंतर देख सकता हूं।

+4

यह संभव है कि आधुनिक ब्राउज़रों में आप कोई अंतर नहीं देख सकें, (अन्य अलग-अलग इंटरफ़ेस पर परिभाषित किए गए हैं)। ऐतिहासिक रूप से, डीओएम में, आयात नोड एक अलग दस्तावेज़ से नोड की प्रतिलिपि बनाने के लिए था, जबकि क्लोन नोड एक ही दस्तावेज़ में नोड की एक प्रति के लिए था, लेकिन डीओएम 4 भेद के साथ दूर है, क्योंकि भेद के कोई उपयोगी प्रभाव नहीं है। – Alohci

उत्तर

11

अलोही सही है: web compatibility forced the browsers to implicitly adoptNode() before inserting a node into another document के बाद से कोई अंतर नहीं है।

इससे पहले कि आप एक नया दस्तावेज़ में क्लोन नोड डालने, वहाँ एक अंतर है: नोड cloneNode(original) द्वारा लौटाए के मालिक दस्तावेज़ मूल नोड के रूप में ही है, और नए दस्तावेज़ यदि आप newDocument.importNode(original) कहते हैं। यदि आप ownerDocument या संबंधित गुण (जैसे बेसयूआरआई) का उपयोग करते हैं तो आप यह अंतर देख सकते हैं।

लेकिन यदि आप उसी दस्तावेज़ पर आयात नोड को कॉल करते हैं जो मूल नोड से संबंधित है, तो इसमें कोई अंतर नहीं है।

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