Aşağıdaki örnekler aşağıdaki HTML snippet'ini gösterir:
<div id="test">
Warning: This element contains <code>code</code> and <strong>strong language</strong>.
</div>
Düğüme aşağıdaki JavaScript tarafından referans verilecektir:
var x = document.getElementById('test');
element.innerHTML
Öğenin torunlarını açıklayan HTML sözdizimini ayarlar veya alır
x.innerHTML
// => "
// => Warning: This element contains <code>code</code> and <strong>strong language</strong>.
// => "
Bu, W3C'nin DOM Ayrıştırma ve Serileştirme Spesifikasyonunun bir parçasıdır . Element
Nesnelerin bir özelliği olduğunu unutmayın .
node.innerText
Nesnenin başlangıç ve bitiş etiketleri arasındaki metni ayarlar veya alır
x.innerText
// => "Warning: This element contains code and strong language."
innerText
Microsoft tarafından tanıtıldı ve bir süredir Firefox tarafından desteklenmedi. 2016 Ağustos ayında, innerText
oldu WHATWG tarafından kabul ve V45 de Firefox eklendi.
innerText
size tarayıcı tarafından oluşturulanlarla eşleşmeye çalışan metnin stil farkında, temsilini verir:
innerText
geçerlidir text-transform
ve white-space
kurallar
innerText
satırlar arasındaki boşluğu keser ve öğeler arasına satır sonları ekler
innerText
görünmez öğeler için metin döndürmez
innerText
textContent
asla oluşturulmamış öğeler için geri dönecek <style />
ve
- Mülkiyeti
Node
elemanları
node.textContent
Bir düğümün ve alt öğelerinin metin içeriğini alır veya ayarlar.
x.textContent
// => "
// => Warning: This element contains code and strong language.
// => "
Bu bir W3C standardı olsa da IE <9 tarafından desteklenmez.
- Stilin farkında değildir ve bu nedenle CSS tarafından gizlenen içeriği döndürür
- Bir yeniden akış tetiklemez (bu nedenle daha fazla performans)
- Mülkiyeti
Node
elemanları
node.value
Bu, hedeflediğiniz öğeye bağlıdır. Yukarıdaki örnek için, tanımlanmış bir özelliği olmayan x
bir HTMLDivElement nesnesi döndürür value
.
x.value // => null
<input />
Örneğin, giriş etiketleri ( ), "denetimdeki geçerli değer" anlamına gelen bir value
özellik tanımlar .
<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>
Gönderen docs :
Not: belirli giriş türleri için döndürülen değer, kullanıcının girdiği değerle eşleşmeyebilir. Örneğin, kullanıcı bir değerine sayısal olmayan bir değer girerse <input type="number">
, döndürülen değer bunun yerine boş bir dize olabilir.
Örnek Komut Dosyası
Yukarıda sunulan HTML için çıktıyı gösteren bir örnek:
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>
innerText
MSIE tarafından textContext'in standart olmayan bir uygulaması ile yapılan ayrım önemsizdir.