首頁  >  問答  >  主體

javascript - js如何只取得目前框內的內容呢?

#圖片如上,再貼下html結構

#
<p class="second">web
    <p class="third">javascript</p>
    <p class="third">css
        <p class="forth">css2.0</p>
        <p class="forth">css3</p>
    </p>
    <p class="third">html</p>
    5555
    <p class="third">可视化</p>
    555
</p>

假設我已經取到second這個最外面的大框
現在我想把裡面的“web#”,“555”(a),“5555(b)」這裡面的匿名文字存入某個變數該怎麼做呢?
我試過了innerText會取得到子節點裡的文字
childNodes[0].nodeValue只會取得到第一個文字節點
如果用if判斷nodeType是否為文字節點是否可行呢?
不知道有沒有更好的方法直接取得到目前框的文字而不取得子節點裡的文字~

怪我咯怪我咯2696 天前709

全部回覆(1)我來回復

  • ringa_lee

    ringa_lee2017-06-26 10:53:24

    var t = document.getElementsByClassName('second')[0];
    
    t.childNodes.forEach(function(v) {
        if(v instanceof Text) {
            console.log(v.data);
            console.log(v.wholeText);
        }
    });

    其中,文字節點為Text()實例,用datawholeText可以取到String類型的文字。

    回覆
    0
  • 取消回覆