1

我需要定义一个名为 getText() 的函数,它查找指定节点处或下方的所有 Text 节点,然后提取并连接节点的文本内容并将其作为单个 JavaScript 字符串返回。在 getText() 中,它将是一个被调用的警报

我的正文内容将是:

<body onload="getText()">
<div id="divText">
<h4>This is a heading!</h4>
<p>This is a paragraph.</p>
<p>And this is another paragraph.</p>
</div>
</body>
4

2 回答 2

2

在较新的浏览器中,您可以使用textContent它。

alert(document.getElementById('divText').textContent);

在较旧的浏览器中,您需要遍历 DOM.childNodes并测试一个节点是否具有nodeType === 3(那么它是一个文本节点)或nodeType === 1(它也是一个您需要递归遍历的元素)。

当您需要过滤仅空白节点时,您还需要最后一个解决方案,例如标签之间的换行符。

于 2012-10-23T14:52:12.760 回答
0

你反对使用 jQuery 吗?($('body').text()) 如果你这样做可能会解决你的问题

于 2012-10-23T14:54:11.987 回答