获取节点的内部文本

Mr.*_*1.0 12 javascript

我无法获取特定节点的内部文本.我添加了我正在使用的示例节点以及我想出的javascript.<span id="goal_left">3 goals lect</span>如果我将其记录到控制台,则javascript可以返回此项.如果我添加innerText到javascript示例,它将不返回控制台.有任何想法如何获取此文本?

HTML

<span id="goal_left">3 goals lect</span>
Run Code Online (Sandbox Code Playgroud)

javascript:这些例子返回 <span id="goal_left">3 goals lect</span>

document.getElementById("goal_left");

document.querySelectorAll("span#goal_left")[0];
Run Code Online (Sandbox Code Playgroud)

javascript:这些例子什么都不返回

document.getElementById("goal_left").innerText;

document.querySelectorAll("span#goal_left")[0].innerText;
Run Code Online (Sandbox Code Playgroud)

Dav*_*mas 33

可能是最简单的方法:

document.querySelectorAll("span#goal_left")[0].firstChild.nodeValue;
Run Code Online (Sandbox Code Playgroud)

虽然如果你总是希望你返回的第一个节点querySelectorAll()可以简单地使用:

document.querySelector("span#goal_left").firstChild.nodeValue;
Run Code Online (Sandbox Code Playgroud)

顺便说一句,我想象任何实现querySelectorAll()可能实现的浏览器textContent,给出:

document.querySelector("span#goal_left").textContent;
Run Code Online (Sandbox Code Playgroud)

只是提供跨浏览器选项:

var textProperty = 'textContent' in document ? 'textContent' : 'innerText';
document.getElementById('goal_left')[textProperty]
Run Code Online (Sandbox Code Playgroud)