2010-03-20 11 views
11

जावास्क्रिप्ट में बाहरी HTML का उपयोग कैसे करें? धन्यवादजावास्क्रिप्ट में बाहरी HTML का उपयोग कैसे करें?

+1

आप इसे जांचना चाहेंगे: http://stackoverflow.com/questions/2474605/how-to-convert-a-htmlelement-to-a-string –

+0

संभावित डुप्लिकेट [एक स्ट्रिंग में HTMLElement को कैसे परिवर्तित करें ] (https://stackoverflow.com/questions/2474605/how-to-convert-a-htmlelement-to-a-string) – Graham

उत्तर

10

बाहरी HTML तत्व सहित HTML का HTML है। तत्व के आंतरिक HTML के साथ इसकी तुलना करें, जो एचटीएमएल है जो टैग खोलने और बंद करने वाले तत्वों के भीतर निहित है। परिभाषा के अनुसार, टैग खोलने और बंद करने के बिना तत्वों में आंतरिक HTML नहीं है।

बाहरी HTML का उपयोग करें जब आप किसी तत्व और उसकी सामग्री को पूरी तरह से प्रतिस्थापित करना चाहते हैं। जब आप केवल तत्व की सामग्री को प्रतिस्थापित करना चाहते हैं तो आंतरिक HTML का उपयोग करें।

7

outerHTML एक तत्व की एक गैर मानक इंटरनेट एक्सप्लोरर संपत्ति है। यह तत्व और उसके बाल तत्वों का एचटीएमएल देता है। कुछ मामलों में इसे एक HTML स्ट्रिंग के साथ तत्व को पूरी तरह से प्रतिस्थापित करने के लिए सेट किया जा सकता है।

+6

एक वर्ष, और क्रोम और सफारी ने भी इस सुविधा को लागू किया है। हालांकि, इसे लिखने के समय, फ़ायरफ़ॉक्स इसका समर्थन नहीं करता है। –

+10

[बाहरी HTML] के लिए समर्थन (https://developer.mozilla.org/en/DOM/element.outerHTML) [फ़ायरफ़ॉक्स 11] में जोड़ा गया था (https://developer.mozilla.org/en/Firefox_11_for_developers)। –

0

शायद jQuery और इसके प्रीपेन्ड() और संलग्न() फ़ंक्शंस को देखें।

http://api.jquery.com/append/

http://api.jquery.com/prepend/

सभी ब्राउज़रों में काम करना चाहिए।

इसके अलावा, इस प्लगइन:

http://yelotofu.com/2008/08/jquery-outerhtml/

कि हो रही है और सेटिंग को शामिल करना चाहिए।

http://api.jquery.com/html/

एक तत्व के भीतर आप सामग्री प्राप्त होगी।

11
function getHTML(node){ 
    if(!node || !node.tagName) return ''; 
    if(node.outerHTML) return node.outerHTML; 

    // polyfill: 
    var wrapper = document.createElement('div'); 
    wrapper.appendChild(node.cloneNode(true)); 
    return wrapper.innerHTML; 
} 
+0

दिलचस्प विचार। हालांकि, अधिकांश ब्राउज़र जो बाहरी HTML का समर्थन नहीं करते हैं, एचटीएमलेमेंट पर प्रोटोटाइप का समर्थन करते हैं, मुझे आश्चर्य है कि अगर इसे छद्म रूप से कार्यान्वित करना आसान होगा? – scunliffe

0

अधिकांश लोकप्रिय ब्राउज़र बाहरी HTML का समर्थन करते हैं। फ़ायरफ़ॉक्स एक अपवाद है। बाहरी HTML ब्राउज़र समर्थन के बारे में अधिक जानकारी के लिए http://www.quirksmode.org/dom/w3c_html.html पर जाएं।

यदि आप अपने पृष्ठ पर jQuery जोड़ सकते हैं तो मैं प्लगइन jQuery outerHTML शामिल करने की अनुशंसा करता हूं।