1. 程式人生 > >js jq 如何獲取文字節點

js jq 如何獲取文字節點

獲取元素文字節點的方法網上有好幾種,我對比了用其中最簡單的一種
1、jquery獲取

<div id="demo">只獲取我<a href="">別管我</a></div>

var a = $ ("#demo").prop ('firstChild').nodeValue;
console.log(a);

1、js原生獲取

<div id="demo">只獲取我<a href="">別管我</a></div>

var a = document.getElementById('demo').firstChild.nodeValue;
console.log(a);

或者:

對於下面的html片段,

<div id="text_test">test text<a href="techbrood.com">techbrood co.</a></div>

獲取節點純文字:

var text = $('#text_test').text()

這個會得到“test text techbrood co.”,也就是會把當前元素的所有節點(包含子節點)的文字讀取出來。

如果只想獲取主節點的文字,方法複雜點:

var text = $("#text_test").contents().filter(function() {
    return this.nodeType === 3;
}).text();


獲取某子節點的文字:

var text = $("#text_test > a").first().contents().filter(function() {
    return this.nodeType === 3;
}).text();