Html 在使用文本节点时,我是否应该使用";“数据”&引用;“nodeValue”&引用;文本内容“;或;wholeText“;领域
可能重复:Html 在使用文本节点时,我是否应该使用";“数据”&引用;“nodeValue”&引用;文本内容“;或;wholeText“;领域,html,dom,cross-browser,textnode,Html,Dom,Cross Browser,Textnode,可能重复: 在我处理DOM变异观察者的实验中,我注意到当目标是一个文本节点时,有四个字段都包含该节点的新文本 数据 nodeValue textContent wholeText 对于这些领域中的哪一个,我应该使用“最佳实践”吗 有些只是为了与其他浏览器或旧的DOM标准兼容?我是在阅读还是修改文本有区别吗?如果其中一个是最好的,那么其他的目的是什么?在所有这些中,我会选择数据:它仅为实现接口的节点定义。尝试访问其他属性会导致未定义 本质上与文本节点的数据相同,但实际上也是为属性和注释节点定
在我处理DOM变异观察者的实验中,我注意到当
目标
是一个文本节点时,有四个字段都包含该节点的新文本
数据
nodeValue
textContent
wholeText
有些只是为了与其他浏览器或旧的DOM标准兼容?我是在阅读还是修改文本有区别吗?如果其中一个是最好的,那么其他的目的是什么?在所有这些中,我会选择
数据
:它仅为实现接口的节点定义。尝试访问其他属性会导致未定义
本质上与文本节点的数据
相同,但实际上也是为属性和注释节点定义的。我通常希望我的程序尽早失败。)
对我来说,这是完全不同的,因为它表示节点及其子节点的文本内容。与单个文本节点相比,可能应该更多地使用它从更复杂的结构中收集文本
说了这么多,textContent
和wholeText
都是在DOM级别3(=更现代)中定义的。在我提问之前,我实际上也使用了数据。我想部分是因为它是按字母顺序排列的,部分是因为它是最简洁的。不过,有更多决定性的理由很好!(:实际上,在这四个节点中,似乎只有textContent是可写的…(或者说,它是唯一一个似乎更新实际显示内容的内容)。这是为什么?更正:数据不是“仅针对文本节点”定义的,而是针对的,它不仅由继承,而且也由继承。