retweet

DOM中的element和Node什么区别?--以及firefox#text节点的烦恼

偶然研究DOM文档,发现一个“深奥”的问题——DOM中的element和Note什么区别? google到这篇文章--《XMLDOM学习笔记》: (4)Node的类型
看起来,只有NodeType==1的node类型才是element,这就是他们的区别. 之所以想起这个问题,是因为我在使用dom解析xml文档时,在firefox和opera中,一个cdata数据元素(element),同时存在两个节点(node) , childNode[0]节点是一个#text节点,内容是空的,childNode[1]节点是一个#cdata-section类型节点。而IE的cdata元素只有一个#cdata-section类型节点。所以解析起来需要顾及浏览器兼容问题。 我一直感到text节点是个奇怪的节点,用firefox的dom查看器查看网页时,会看到很多空的#text节点,似乎这和文档的源文件有关系。具体深层的问题我还没有搞清楚。暂且按照惯例,认为firefox和opera的行为是标准行为吧
--EOF--

若无特别说明,本站文章均为原创,转载请保留链接,谢谢

本文地址: http://www.dulao5.com/front-end/2006/08/26/diff-the-element-and-node-in-DOM.textile

nodeType Named Constant nodeTypeString nodeName nodeValue | 1 ELEMENT_NODE element tagName null | 2 ATTRIBUTE_NODE attribute name value | 3 TEXT_NODE text #text content of node | 4 CDATA_SECTION_NODE cdatasection #cdata-section content of node | 5 ENTITY_REFERENCE_NODE entityreference entity reference name null | 6 ENTITY_NODE entity entity name null | 7 PROCESSING_INSTRUCTION_NODE processinginstruction target content of node | 8 COMMENT_NODE comment #comment comment text | 9 DOCUMENT_NODE document #document null | 10 DOCUMENT_TYPE_NODE documenttype doctype name null | 11 DOCUMENT_FRAGMENT_NODE documentfragment #document fragment null | 12 NOTATION_NODE notation notation name null |