文本没有所有后代节点的 JS 内容

textContent for JS without all the descendant nodes

本文关键字:JS 节点 内容 后代 文本      更新时间:2023-09-26

我想获取当前节点的文本内容,而不是任何后代节点的文本内容。 关于我该怎么做的任何想法?

文本内容执行后面。 nodeValue 返回一个空字符串。

不确定是否有更简单的方法,但您始终可以迭代所有节点的子节点并获取文本节点的值。

var text = "";
var child = element.firstChild;
while(child) {
    if (child.nodeType === 3) { // nodeType === Node.TEXT_NODE
        text += child.nodeValue;
    }
    child = child.nextSibling;
}
console.log(text);

http://jsfiddle.net/zqbyE/

我遇到了同样的问题,并通过获取第一个孩子的文本内容来解决它,这实际上是文本。因此,代码变为:

node.firstChild.textContent

我刚刚在当前节点内创建了一个包含该节点特定文本内容的跨度,并为此获取了 txt。 我不知道。。。 似乎比遍历节点的所有子节点更容易。不过感谢您的建议!