第十章 DOM

105 阅读1分钟

节点层次

Node类型

DOM1 级定义了一个 Node 接口,该接口将由 DOM 中的所有节点类型实现。每个节点都有一个 nodeType 属性,用于表明节点的类型。节点类型由在 Node 类型中定义的下列12 个数值常量来表示:

  • 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)。

  1. nodeName 和 nodeValue 属性

    使用nodeName和nodeValue属性可以了解节点的具体信息。对于元素节点,nodeName 中保存的始终都是元素的标签名,而 nodeValue 的值则始终为 null

  2. 节点关系

    每个节点都有一个 childNodes 属性,其中保存着一个 NodeList 对象(可以通过方括号语法来访问 NodeList 的值,这个对象也有 length 属性—— 表示的是访问 NodeList 的那一刻,其中包含的节点数量)。NodeList对象是基于DOM结构动态执行查询的结果,可以通过方括号和item()访问节点

    var firstChild = someNode.childNodes[0]; 
    var secondChild = someNode.childNodes.item(1); 
    var count = someNode.childNodes.length; 
    

DOM操作技术