我需要定义一个名为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>
答案 0 :(得分:2)
在较新的浏览器中,您可以使用textContent
。
alert(document.getElementById('divText').textContent);
在旧版浏览器中,您需要使用.childNodes
遍历DOM并测试,如果某个节点有nodeType === 3
(那么它是文本节点)或nodeType === 1
(它是您需要的元素)递归地遍历)。
当您需要过滤仅空白节点时,您还需要最后一个解决方案,例如标签之间的换行符。
答案 1 :(得分:0)
你对使用jQuery不利吗? ($('body')。text())如果你这样做可以解决你的问题