2009-08-30 10 views
9

आज मैं createDocumentFragment पर ठोकर खाई। मैं सोच रहा था कि क्या डॉक्यूमेंटेशन फ्रैगमेंट समर्थित है, और कैसे, विभिन्न ब्राउज़रों पर, विशेष रूप से आईई श्रृंखला।दस्तावेज़फ्रेगमेंट ब्राउज़र समर्थन

कोई भी इस विषय के बारे में कुछ जानता है?

+1

http://stackoverflow.com/questions/1643349/is-there-any-way-to-find-an-element-in-a-documentfragment/1643383#1643383 निकफिट्स की टिप्पणी देखें। ड्रैग का इलाज आईई द्वारा दस्तावेजों के रूप में किया जाता है। http://msdn.microsoft.com/en-us/library/ms536387%28VS.85%29.aspx – Olivvv

उत्तर

13

हाँ, यह सभी आधुनिक ब्राउज़रों (आईई 6 सहित) में पूरी तरह से समर्थित है।

देखें: http://www.quirksmode.org/dom/w3c_core.html#miscellaneous

+1

भले ही दस्तावेज़फ्रेगमेंट सभी ब्राउज़रों द्वारा समर्थित है, डीओएम ट्रैवर्सल विधियों जैसे 'getElementsByTagName',' children' इत्यादि। उन पर काम मत करो। –

4

सामान्य तौर पर यह प्रति डोम कल्पना के रूप में ठीक हमेशा काम किया है।

लेकिन गैर-मानक एक्सटेंशन को निर्बाध रूप से काम करने की अपेक्षा न करें ... उदाहरण के लिए आप किसी दस्तावेज़फ्रैगमेंट पर आंतरिक HTML सेट नहीं कर सकते (जो शर्म की बात है क्योंकि यह कुछ बड़े पृष्ठों पर सम्मिलन गति में काफी सुधार कर सकता है)।

+1

लेकिन आप 'document.createElement' के साथ धारक' div' बना सकते हैं और स्ट्रिंग को 'div' में 'innerHTML' के रूप में जोड़ सकते हैं, और फिर अंत में' div' को' दस्तावेज़फ्रेगमेंट ' –

+0

पर जोड़ दें हां, लेकिन इससे कोई नहीं सीधे 'div' पर काम करने पर प्रदर्शन लाभ। विचार एक टेबल पर कई पंक्तियों को जोड़ने जैसे संचालन को तेज करना होगा, जो आम तौर पर नोड-बाय-नोड डीओएम विधियों के साथ धीमे होते हैं। आप 'रेंज' ऑब्जेक्ट्स के साथ टुकड़ों को जोड़कर बहुत कुछ कर सकते हैं, सिवाय इसके कि डोम लेवल 2 टीआर (विशेष रूप से आईई) के ब्राउज़र कार्यान्वयन अभी तक पूरी तरह से नहीं हैं। – bobince

4
  ╔═════════════════════════════════╗ 
     ║ document.createDocumentFragment ║ 
╔════════╬═════════════════════════════════╣ 
║ IE5 ║ true       ║ 
║ IEM5.2 ║ true       ║ 
║ IE5.5 ║ false       ║ 
║ IE6+ ║ true       ║ 
║ OPM6+ ║ true       ║ 
║ OP7+ ║ true       ║ 
║ N6+ ║ true       ║ 
║ KQ  ║ true       ║ 
╚════════╩═════════════════════════════════╝ 

हालांकि सावधान रहें, अस्तित्व हमेशा कार्यान्वयन जरूरत पर जोर देता नहीं है।

Gotchas

  • मैक पर आईई मैक 5.2 टुकड़े दस्तावेज़ के लिए पाठ नोड्स नहीं जोड़ सकते हैं, और न ही किसी दस्तावेज़ के लिए टुकड़ा की सामग्री को जोड़ सकते हैं।
  • ओपेरा 7.2 टुकड़ा बनाता है लेकिन बनाए गए तत्वों को शैलियों को लागू नहीं करता है।
संबंधित मुद्दे