//Node 类型 Node type
Node.ELEMENT_NODE(1); //元素节点
Node.ATTRIBUTE_NODE(2); //属性节点
Node.TEXT_NODE(3); //文本节点
Node.CDATA_SECTION_NODE(4);
Node.ENTITY_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);
Node.NOTATION_NODE(12);
if(node1.nodeType == Node.ELEMENT_NODE) { //在IE中文无效
console.log('node1 is an element');
}
//通用
if(node1.nodeType == 1) {
console.log('node1 is an element');
}
//NodeName 和 NodeValue
if(node2.nodeType = 1) { //只用元素节点才具有
console.log(node2.nodeName);
vale = node2.nodeValue;
}
1、我们需要记住的有几个节点类型 分别是: Node.ELEMENT_NODE(1)、Node.ATTRIBUTE_NODE(2)、Node.TEXT_NODE(3)、Node.DOCUMENT_NODE(9)、Node.FRAGMENT_NODE(11)、Node.COMMENT_NODE(8)这几种节点类型;
2、当我们在判断节点类型的时候: 我们不能用节点名称去判断,因在IE中判断是无效的;
3、nodeName和NodeValue是只有元素节点才具有的;
4、每个Node节点具有一个ChildNodes属性,其中保存着一个NodeList对象,NodeList是一种类数组对象,用于保存一组有序的节点;NodeList对象的独特之处在于,它实际上是基于DOM结构动态查询的结果,因此DOM结构的变化能够自动反应在NodeList对象中。