如何使用document.querySelector使用document.querySelector从节点中选择特定的文本输出?

时间:2018-06-13 17:08:36

标签: javascript html css

如何使用document.querySelectorAll()从下面的代码中选择特定的文本输出?

我想在变量中捕获结果,并尝试使用以下代码执行此操作:

let result = document.querySelectorAll('.coinmarketcap-currency-widget');

querySelectorAll()返回节点列表。我的问题是如何到达我需要的特定子节点?

我需要从span标签元素中选择值为" 0.044763 USD"的文本。我的问题是如何到达我需要的特定子节点(0.044763 USD)?

<div class="coinmarketcap-currency-widget">
<div style="border:2px">
<div><div style="float:right;width:67%;">

<span style="font-size: 18px;"><a href="http://coinmarketcap.com/" target="_blank">TRON (TRX)</a></span> <br>            
<span style="font-size: 16px;">

    0.044763 USD 

    <span style="color:#d14836">(-3.85%)</span></span>            

2 个答案:

答案 0 :(得分:2)

使用此selecor .coinmarketcap-currency-widget div > span:last-child获取目标范围并拆分innerHTML以获取值

&#13;
&#13;
let result = document.querySelectorAll('.coinmarketcap-currency-widget div > span:last-child');
console.log(result[0].innerHTML.split("<span")[0]);
&#13;
<div class="coinmarketcap-currency-widget">
  <div style="border:2px">
    <div>

      <div style="float:right;width:67%;">

        <span style="font-size: 18px;">
            <a href="http://coinmarketcap.com/" target="_blank">TRON (TRX)</a>
        </span> 
<br>
        <span style="font-size: 16px;">

    0.044763 USD 

           <span style="color:#d14836">(-3.85%)</span>
        </span>
      </div>
    </div>
  </div>
</div>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

我最终使用以下内容作为一个简单的解决方案并将其保存到变量中。

document.getElementsByTagName('span')[1].innerText;