节点类型不同,这三个属性的值也不相同
nodeType
nodeType属性返回节点类型的常数值。不同的类型对应不同的常数值,12种类型分别对应1到12的常数值
元素节点 Node.ELEMENT_NODE(1)
属性节点 Node.ATTRIBUTE_NODE(2)
文本节点 Node.TEXT_NODE(3)
CDATA节点Node.CDATA_SECTION_NODE(4)
实体引用名称节点 Node.ENTRY_REFERENCE_NODE(5)
实体名称节点 Node.ENTITY_NODE(6)
处理指令节点 Node.PROCESSING_INSTRUCTION_NODE(7)
注释节点 Node.COMMENT_NODE(8)
文档节点 Node.DOCUMENT_NODE(9)
文档类型节点 Node.DOCUMENT_TYPE_NODE(10)
文档片段节点 Node.DOCUMENT_FRAGMENT_NODE(11)
DTD声明节点 Node.NOTATION_NODE(12)
DOM定义了一个Node接口,这个接口在javascript中是作为Node类型实现的,而在IE8-浏览器中的所有DOM对象都是以COM对象的形式实现的。所以,IE8-浏览器并不支持Node对象的写法
你好,关于DOM的节点类型,在MDN上有明确的说明。
早期定义的节点类型总共有12种,分别将对应nodeType的值定义为1-12,经过长期发展,新标准中已经将其中一部分(2,
4,
5,
6,
12)弃用,其中最常用的是:1(普通元素节点)、3(文本节点)。
查看一个Node对象的节点类型:
var body = document.getElementsByTagName('body')[0]
console.log(body.nodeType)更多,更详细信息可以前往MDN查看:
https://developer.mozilla.org/zh-CN/docs/Web/API/Node/nodeType