簡體   English   中英

Javascript :: firstChild的textContent / innerText

[英]Javascript:: textContent/innerText of firstChild

我的代碼幾乎解釋了我將要得到的東西:

<div id=player>
    <div class="button hand">&#9658;</div>
    <div class=time>00:00/02:25</div>   
    <div class="timeline hand"><span class="now hand"></span></div>
</div>

<script>

var myPlayer=document.getElementById('player').firstChild;
var playerStatus=(myPlayer.innerText||myPlayer.textContent);

console.log(playerStatus);

</script>

我期望得到ascii值&#9658; 在控制台上。

這里需要細微調整

嘗試這個:

var myPlayer=document.getElementById('player').firstElementChild;

問題在於#player的第一個孩子是文本節點本身。 您要查找的是#player的第一個元素#player

一個小小的注意事項: firstElementChild不支持firstElementChild。

您可以同時使用idclass ,因此請使用querySelector()

var myPlayer=document.querySelector('#player > .button.hand');

這也具有在IE8中工作的好處。


另外, innerText/textContent的快捷方式是在腳本頂部進行檢查,並將適當的密鑰存儲在字符串中。

var text = ("textContent" in document) ? "textContent" : "innerText";

然后在text變量中使用方括號。

var myPlayer=document.querySelector('#player > .button.hand');
var playerStatus=(myPlayer[text]);

然后,您實際上可以像這樣縮短它:

var playerStatus=document.querySelector('#player > .button.hand')[text];

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM