2016-03-26 14 views
4

İlk önce, JavaScript için bir kitaplık oluşturuyorum ve jQuery kullanamıyorum. Bir HTML öğesinin metin içeriğini, çocukların metin içeriği olmadan almaya çalışıyorum.JavaScript ilet textContent çocuklar hariç

Her iki özniteliği innerText ve textContent gerekli olanı vermez, lütfen yardım edin.

cevap

2

DOM API'yi childNodes ve nodeType olarak çözebilirsiniz.

var elChildNode = document.querySelector("#hello").childNodes; 
var sChildTextSum = ""; 

elChildNode.forEach(function(value){ 
    if(value.nodeType === Node.TEXT_NODE) { 
     console.log("Current textNode value is : ", value.nodeValue.trim()); 
     sChildTextSum += value.nodeValue; 
    } 
}); 

console.log("All text value of firstChild : ", sChildTextSum); 

Yukarıdaki gibi bir örnek kod oluşturdum.

https://jsfiddle.net/nigayo/p7t9bdc3/

1

<span>... hariç aşağıdaki elemanından Author's Name almak için:

<div class="details__instructor"> 
    Author's Name<span ng-show="job_title">, Entrepreneur</span> 
</div> 

kullanımını childNodes[0]. Örneğin:

"Author's Name" 
:

document.querySelector('div.details__instructor').childNodes[0] 

sonucu bir amacıdır