नीचे दिए गए उदाहरण निम्नलिखित HTML स्निपेट का उल्लेख करते हैं:
<div id="test">
Warning: This element contains <code>code</code> and <strong>strong language</strong>.
</div>
नोड को निम्नलिखित जावास्क्रिप्ट द्वारा संदर्भित किया जाएगा:
var x = document.getElementById('test');
element.innerHTML
तत्व के वंश का वर्णन करने वाले HTML सिंटैक्स को सेट या प्राप्त करता है
x.innerHTML
// => "
// => Warning: This element contains <code>code</code> and <strong>strong language</strong>.
// => "
यह W3C के DOM पार्सिंग और सीरियललाइज़ेशन स्पेसिफिकेशन का हिस्सा है । ध्यान दें कि यह Elementवस्तुओं की एक संपत्ति है ।
node.innerText
सेट या ऑब्जेक्ट के प्रारंभ और अंत टैग के बीच पाठ प्राप्त करता है
x.innerText
// => "Warning: This element contains code and strong language."
innerTextMicrosoft द्वारा शुरू किया गया था और कुछ समय के लिए फ़ायरफ़ॉक्स द्वारा असमर्थित था। 2016 के अगस्त में innerTextकिया गया था WHATWG द्वारा अपनाई गई और v45 में फ़ायरफ़ॉक्स में जोड़ा गया था।
innerText आपको एक शैली के बारे में जानकारी देता है, उस पाठ का प्रतिनिधित्व करता है जो मिलान करने की कोशिश करता है कि ब्राउज़र द्वारा इसका क्या अर्थ प्रस्तुत किया गया है:
innerTextलागू होता है text-transformऔर white-spaceनियम
innerText ट्रिम लाइनों के बीच सफेद स्थान और आइटम के बीच लाइन ब्रेक जोड़ता है
innerText अदृश्य वस्तुओं के लिए पाठ नहीं लौटाएगा
innerTextऐसे textContentतत्वों के लिए वापस आएंगे जो कभी भी <style />और जैसे नहीं प्रदान किए जाते हैं
Nodeतत्वों की संपत्ति
node.textContent
किसी नोड और उसके वंश की पाठ्य सामग्री को प्राप्त या सेट करता है।
x.textContent
// => "
// => Warning: This element contains code and strong language.
// => "
जबकि यह W3C मानक है , यह IE <9 द्वारा समर्थित नहीं है।
- स्टाइल के बारे में पता नहीं है और इसलिए सीएसएस द्वारा छिपाई गई सामग्री लौटाएगा
- रिफ्लो को ट्रिगर नहीं करता (इसलिए अधिक प्रदर्शन करने वाला)
Nodeतत्वों की संपत्ति
node.value
यह उस तत्व पर निर्भर करता है जिसे आपने लक्षित किया है। ऊपर के उदाहरण के लिए, xएक रिटर्न HTMLDivElement वस्तु है, जो एक नहीं है valueसंपत्ति को परिभाषित किया।
x.value // => null
इनपुट टैग ( <input />), उदाहरण के लिए, एक valueसंपत्ति को परिभाषित करते हैं , जो "नियंत्रण में वर्तमान मूल्य" को संदर्भित करता है।
<input id="example-input" type="text" value="default" />
<script>
document.getElementById('example-input').value //=> "default"
// User changes input to "something"
document.getElementById('example-input').value //=> "something"
</script>
से डॉक्स :
नोट: कुछ इनपुट प्रकारों के लिए, लौटाया गया मान उस मूल्य से मेल नहीं खा सकता जो उपयोगकर्ता ने दर्ज किया है। उदाहरण के लिए, यदि उपयोगकर्ता गैर-संख्यात्मक मान में प्रवेश करता है <input type="number">, तो लौटाया गया मान बदले में एक रिक्त स्ट्रिंग हो सकता है।
नमूना स्क्रिप्ट
यहां एक उदाहरण दिया गया है जो ऊपर प्रस्तुत HTML के लिए आउटपुट दिखाता है:
var properties = ['innerHTML', 'innerText', 'textContent', 'value'];
// Writes to textarea#output and console
function log(obj) {
console.log(obj);
var currValue = document.getElementById('output').value;
document.getElementById('output').value = (currValue ? currValue + '\n' : '') + obj;
}
// Logs property as [propName]value[/propertyName]
function logProperty(obj, property) {
var value = obj[property];
log('[' + property + ']' + value + '[/' + property + ']');
}
// Main
log('=============== ' + properties.join(' ') + ' ===============');
for (var i = 0; i < properties.length; i++) {
logProperty(document.getElementById('test'), properties[i]);
}
<div id="test">
Warning: This element contains <code>code</code> and <strong>strong language</strong>.
</div>
<textarea id="output" rows="12" cols="80" style="font-family: monospace;"></textarea>
innerTextMSIE द्वारा textContext के एक गैर-मानक कार्यान्वयन के साथ अंतर , गैर-तुच्छ है।