可能重复:
如何检索DOM Text节点的文本?
在我处理DOM变异观察者的实验中,我注意到当target文本节点有四个字段都包含节点的新文本时.
datanodeValuetextContentwholeText对于我应该使用哪些领域,是否存在"最佳实践"?
有些只是为了兼容其他浏览器或旧的DOM标准吗?是否我正在阅读与修改文本有什么不同?如果最好的是其他人的目的是什么?
我正在做一个正在做DOM树行走的项目.为了插入一些span标记以向文档添加高亮,有时需要拆分textnode:
var newTextNode = treeWalker.currentNode.splitText(charOffset);
Run Code Online (Sandbox Code Playgroud)
问题是当我接下来试着打电话时:
if (newTextNode.nodeValue == "")
{
//...
}
Run Code Online (Sandbox Code Playgroud)
这个.nodeValue调用在IE9中产生一个JavaScript错误,简单地Incorrect function. 说,至少可以说是完全无益的.思考也许是一些奇怪的事情,我打开了调试器并执行:typeof newTextNode.nodeValue返回"unknown".
有人能够解释这种行为吗?我想也许这个函数根本不适用于文本节点,但它在其他场景中运行得很好.只有在打电话之后splitText,它似乎才会呕吐.
我感谢大家的帮助!我的谷歌到目前为止还不够.
加成:
查看newTextNode对象后,还有更多属性评估为"不正确的函数"