`

初学进阶

    博客分类:
  • xml
XML 
阅读更多

8.2.3 DOM的四个基本接口

在DOM接口规范中,有四个基本的接口:Document,Node,NodeList以及NamedNodeMap。在这四个基本接口中,Document接口是对文档进行操作的入口,它是从Node接口继承过来的。Node接口是其他大多数接口的父类,象Documet,Element,Attribute,Text,Comment等接口都是从Node接口继承过来的。NodeList接口是一个节点的集合,它包含了某个节点中的所有子节点。NamedNodeMap接口也是一个节点的集合,通过该接口,可以建立节点名和节点之间的一一映射关系,从而利用节点名可以直接访问特定的节点。下面将对这四个接口分别做一些简单的介绍。

  1. Document接口

Document接口代表了整个XML/HTML文档,因此,它是整棵文档树的根,提供了对文档中的数据进行访问和操作的入口。

由于元素、文本节点、注释、处理指令等都不能脱离文档的上下文关系而独立存在,所以在Document接口提供了创建其他节点对象的方法,通过该方法创建的节点对象都有一个ownerDocument属性,用来表明当前节点是由谁所创建的以及节点同Document之间的联系。

在DOM树中,Document接口同其他接口之间的关系如下图所示:

由图可以看出,Document节点是DOM树中的根节点,也即对XML文档进行操作的入口节点。通过Docuemt节点,可以访问到文档中的其他节点,如处理指令、注释、文档类型以及XML文档的根元素节点等等。另外,从上图我们还可以看出,在一棵DOM树中,Document节点可以包含多个处理指令、多个注释作为其子节点,而文档类型节点和XML文档根元素节点都是唯一的。

关于Document接口的IDL(Interface Definition Language接口定义语言)定义和其中一些比较常用的属性和方法的详细介绍在许多参考书都可以找到,我们将在后面结合实际例子给予介绍。

  1. Node接口

Node接口在整个DOM树中具有举足轻重的地位,DOM接口中有很大一部分接口是从Node接口继承过来的,例如,Element、Attr、CDATASection等接口,都是从Node继承过来的。在DOM树中,Node接口代表了树中的一个节点。一个典型的Node接口如下图所示:

如图所示,Node接口提供了访问DOM树中元素内容与信息的途径,并给出了对DOM树中的元素进行遍历的支持。

同样,我们将在后面结合实际例子详细说明Node接口的具体使用方法。

  1. NodeList接口

NodeList接口提供了对节点集合的抽象定义,它并不包含如何实现这个节点集的定义。NodeList用于表示有顺序关系的一组节点,比如某个节点的子节点序列。另外,它还出现在一些方法的返回值中,例如GetNodeByName。

在DOM中,NodeList的对象是"live"的,换句话说,对文档的改变,会直接反映到相关的NodeList对象中。例如,如果通过DOM获得一个NodeList对象,该对象中包含了某个Element节点的所有子节点的集合,那么,当再通过DOM对Element节点进行操作(添加、删除、改动节点中的子节点)时,这些改变将会自动地反映到NodeList对象中,而不需DOM应用程序再做其他额外的操作。

NodeList中的每个item都可以通过一个索引来访问,该索引值从0开始。

  1. NamedNodeMap接口

实现了NamedNodeMap接口的对象中包含了可以通过名字来访问的一组节点的集合。不过注意,NamedNodeMap并不是从NodeList继承过来的,它所包含的节点集中的节点是无序的。尽管这些节点也可以通过索引来进行访问,但这只是提供了枚举NamedNodeMap中所包含节点的一种简单方法,并不表明在DOM规范中为NamedNodeMap中的节点规定了一种排列顺序。

NamedNodeMap表示的是一组节点和其唯一名字的一一对应关系,这个接口主要用在属性节点的表示上。
与NodeList相同,在DOM中,NamedNodeMap对象也是"live"的。

  • 大小: 6.5 KB
  • 大小: 10.4 KB
  • 大小: 12.7 KB
分享到:
评论

相关推荐

    xml初学进阶.chm

    xml初学进阶.chm xml初学进阶.chm xml初学进阶.chm xml初学进阶.chm xml初学进阶.chm

    XML初学进阶---XML初学者的福音

    本教程“XML初学进阶”是专为那些对XML感兴趣的初学者准备的,旨在帮助他们快速掌握XML的基础知识并逐步提升到进阶水平。 首先,我们要理解XML的基本概念。XML文档由元素(Elements)构成,元素是XML文档的最基本...

    XML 初学进阶,HTM格式

    这个“XML初学进阶”教程可能是为了帮助初学者掌握XML的基本概念、语法以及在实际应用中的使用方法。以下是XML的一些核心知识点: 1. **XML的起源与目标**:XML起源于SGML(Standard Generalized Markup Language)...

    XML初学进阶——XML基础帮手

    以下是对XML初学进阶的一些关键知识点的详细说明: 1. **XML的定义与用途**:XML是一种自定义的、可扩展的标记语言,它允许用户根据需要创建自己的标签来描述数据。这种灵活性使得XML广泛应用于数据交换、配置文件...

    XML初学进阶.rar

    本压缩包“XML初学进阶.rar”旨在为初学者提供一个全面的XML学习资源,帮助他们从基础知识到进阶应用逐步掌握这一重要技术。 1. **XML的基本概念** - XML是一种元标记语言,它允许用户自定义标记来描述数据。 - ...

    非常适合初学者或者初学进阶者学习的商城模仿页面源码

    模仿 天猫,亚马逊,加入了localStorage应用,融入了图片闪光、楼层、返回顶部、css3动画、对象写法、轮播图等效果,非常适合初学者或者初学进阶者学习。本源码所有内容仅供学习,不负任何法律责任。对于二次传播者...

    XML初学进阶学习,html文档

    为了实践所学,你可以尝试从提供的"XML初学进阶"压缩包中找到包含XML示例的HTML文件,将代码复制出来运行并进行修改。这将帮助你更好地掌握XML的语法和应用。同时,也可以通过实验了解如何在HTML环境中与XML进行交互...

    xml初学进阶xml初学进阶xml初学进阶xml初学进阶

    下面将详细介绍XML的初学进阶知识。 一、XML的基本概念 1. XML起源:XML源于HTML,但其设计目标是传输和存储数据,而非显示数据,因此它更加结构化。 2. 标记语言:XML是一种自定义的标记语言,允许用户根据需求...

    XML初学进阶

    5. **文本内容**:元素可以包含文本,如`<title>XML初学进阶</title>`。 6. **命名空间**:在XML中,为了避免命名冲突,可以使用命名空间,通过前缀来区分,如`xmlns="http://www.example.com"`。 7. **DTD...

    XML初学进阶(HTML)

    分为十章详细介绍XML标准的语法和应用。第一章,我们简单介绍一下什么是XML,并将回顾XML的发展史。从第二章到第四章,我们分别从XML语法、DTD和样式单三方面详细介绍XML的三个基本要件。在第五、第六章中,我们从与...

    XML 初学进阶.chm

    个人学习过的最好XML入门书籍,通俗易懂

    XML 初学进阶

    在本文中,我们将深入探讨XML的基础知识、结构、解析方式以及它在IT行业中的应用,帮助初学者逐步进阶。 XML的初衷是为了提供一种结构化的方式来存储和传输数据,使得数据能够独立于显示格式进行交换。它的核心特性...

Global site tag (gtag.js) - Google Analytics