का उपयोग करके दिए गए सादे पाठ HTML में तत्व जोड़ें, मुझे HTML के कच्चे टेक्स्ट स्ट्रिंग वाले किसी पृष्ठ पर तत्व जोड़ने में सक्षम होना चाहिए, जिसमें टैग, विशेषताओं आदि शामिल हैं। आदर्श रूप से मैं अच्छी तरह से गठित एचटीएमएल की किसी भी मनमानी स्ट्रिंग के साथ कुछ करने में सक्षम होना चाहते हैं;डीओएम में तत्वों को केवल शुद्ध जावास्क्रिप्ट (कोई jQuery)
var theElement = document.createElement("<h1 id='title'>Some Title</h1><span style="display:inline-block; width=100px;">Some arbitrary text</span>");
document.getElementById("body").appendChild(theElement);
स्पष्ट रूप से यह काम नहीं करता है, मैं एक ही परिणाम प्राप्त करने के अच्छे तरीकों की तलाश में हूं। यदि संभव हो तो मैं HTML को पार्स करना से बचना चाहता हूं। मैं उन उपकरणों पर गंभीर रूप से प्रतिबंधित हूं जिनका उपयोग मैं कर सकता हूं, कोई jQuery या बाहर शामिल नहीं है और क्रॉस-ब्राउज़र और पिछड़ा संगत आईई 6 होना चाहिए। कोई मदद बड़ी होगी।
आपको एक div के बजाय [DocumentFragment] (http://ejohn.org/blog/dom-documentfragments/) का उपयोग करना चाहिए; यह बच्चे नोड्स को स्थानांतरित करने के लिए तेज़ और अधिक आसान होगा। ** संपादित करें **: उस टिप्पणी को स्क्रैच करें, क्योंकि आप दस्तावेज़ फ़्रेगमेंट के 'आंतरिक HTML' को सेट नहीं कर सकते हैं। – Phrogz
जबकि लूप पर स्विच करने के लिए संपादन ने इंडेक्स के रूप में एक इंडेक्स का उपयोग करके लूप के साथ समस्या को हल किया है, वास्तव में शरीर को इसे शरीर में जोड़ने के लिए तत्व से हटा देता है। बच्चे नोड को क्लोन करना भी ऐसा करने का एक कम सुरुचिपूर्ण तरीका है। – kirps
@kirps: हाँ, मैंने आखिरकार उस नमूना कोड का परीक्षण किया और "appendChild" के अजीब व्यवहार की खोज की और इसके माता-पिता तत्व के "बच्चों" विशेषता पर इसका असर पड़ा। – maerics