第I部分 W3C文档对象模型概述
第1章 DOM简介
1.1 DOM的定义
1.2 DOM的基本原理
1.2.1 设计原理
1.2.2 面向对象和DOM接口的平面视图
1.3 DOM的发展
1.3.1 客户端上的DOM
1.3.2 服务器上的DOM
1.4 DOM的层
1.4.1 Level 1
1.4.2 Level 2
1.4.3 Level 3
1.5 DOM规范中使用的约定
1.6 DOM不是什么
1.7 小结
第2章 DOM表示结构化文档的方式
2.1 基本的DOM数据类型
2.1.1 DOMString类型
2.1.2 DOMTimeStamp类型
2.1.3 处理错误:DOMException接口
2.2 文档树结构
2.3 DOM节点类型
2.4 基础的Core DOM接口
2.4.1 DOMException代码
2.4.2 DOM Node接口
2.4.3 节点辅助程序接口:NodeList和NamedNodeMap
2.4.4 DOMImplementation接口
2.4.5 Document接口
2.4.6 DocumentFragment接口
2.4.7 Element接口
2.4.8 Attr接口
2.4.9 CharacterData接口
2.4.10 Comment接口
2.4.11 Text接口
2.5 Extended Core接口
2.5.1 CDATASection接口
2.5.2 DocumentType接口
2.5.3 Notation接口
2.5.4 实体接口
2.5.5 EntityReference接口
2.5.6 ProcessingInstruction接口
2.6 小结
第3章 导航和处理结构化文档
3.1 处理节点
3.1.1 命名空间
3.1.2 获得对节点的对象引用
3.1.3 检查节点
3.1.4 处理节点
3.1.5 创建新节点
3.1.6 从其他文档中导入节点
3.2 遍历文档
3.2.1 使用Node接口属性
3.2.2 使用DOM Level 2 Traversal模块
3.3 小结
第II部分 实际操作中的DOM
第4章 算法
4.1 DOM算法
4.2 基本的节点遍历算法
4.3 基于位置的算法
4.3.1 确定节点是否具有一种给定类型的祖先节点
4.3.2 确定节点是否具有给定类型的兄弟节点
4.4 基于内容的算法
4.4.1 确定一个节点是否包含另一个节点
4.4.2 更好的Node接口版本:按照类型检索相关节点
4.4.3 按照属性值寻找节点
4.5 小结
第5章 浏览器
5.1 主要浏览器中的DOM支持
5.1.1 Microsoft Internet Explorer 6
5.1.2 Netscape Navigator 6.x
5.1.3 Opera 6
5.2 在浏览器环境中使用DOM
5.2.1 获得对文档的引用
5.2.2 检查页面的结构和内容
5.2.3 创建和修改页面元素
5.2.4 使用DOM Level 2 Events接口处理事件
5.3 Internet Explorer的特有方法和属性
5.3.1 Internet Explorer的特有属性
5.3.2 Internet Explorer特有的方法
5.4 浏览器特别之处
5.4.1 Internet Explorer
5.4.2 Netscape Navigator
5.5 小结
第6章 应用程序
6.1 DOM实现不仅限于浏览器
6.2 独立的DOM实现和嵌入式DOM实现
6.3 Apache Xerces分析程序
6.3.1 怎样获取Xerces
6.3.2 安装Xerces
6.3.3 逐步了解API
6.3.4 使用Xerces
6.3.5 如何获取Xerces的更多信息
6.4 Microsoft MSXML分析程序
6.4.1 如何获取MSXML 4
6.4.2 安装MSXML 4
6.4.3 逐步了解API
6.4.4 使用MSXML4
6.4.5 如何获取关于MSXML的更多信息
6.5 Macromedia Dreamweaver
6.5.1 如何获取Dreamweaver
6.5.2 Dreamweaver中的DOM
6.5.3 逐步了解API
6.5.4 使用Dreamweaver DOM
6.5.5 如何获取Dreamweaver DOM的更多信息
6.6 小结
第7章 调试DOM应用程序
7.1 良好的调试技术的重要性
7.2 保持自信:使用Assert()方法
7.2.1 定义ASSERT()方法
7.2.2 有效地使用ASSERT()宏
7.2.3 充满想象地运用ASSERT()
7.3 TraceConsole的使用
7.3.1 使用TraceConsole
7.3.2 TraceConsole函数
7.4 DOMDumper
7.4.1 DOMDumper输出结果
7.4.2 DOMDumper代码
7.4.3 使用DOMDumper
7.5 小结
第III部分 DOM的实际应用
第8章 提供自动文档定位
8.1 使用DOM提供更好的文档定位
8.2 示例:动态书签
8.2.1 设置
8.2.2 创建用户界面元素
8.2.3 建立书签列表
8.2.4 把书签列表插入文档
8.2.5 响应用户的书签选择
8.3 示例:自动生成目录
8.3.1 设置
8.3.2 扫描文档的节点
8.3.3 建立TOC目标
8.3.4 添加TOC条目
8.4 示例:文档占位符
8.4.1 设置
8.4.2 处理单击事件
8.4.3 发现包含段落节点
8.5 小结
第9章 动态用户界面
9.1 用DOM创建动态用户界面
9.2 创建一个颜色拾取器
9.3 现场列表编辑
9.4 基于DOM的弹出式菜单
9.5 小结
第10章 数据驱动型文档的客户端处理
10.1 在客户端处理数据驱动型文档
10.2 客户端排序
10.2.1 对列表进行排序
10.2.2 对表进行排序
10.3 服务器端生成文档的后处理
10.4 处理Web页面中的嵌入式XML数据
10.4.1 Internet Explorer中的数据岛
10.4.2 Netscape Navigator中的数据岛
10.5 示例:Joe's Cafe Menu应用程序
10.5.1 菜单页面
10.5.2 菜单的XML代码
10.5.3 生成菜单的HTML文档
10.5.4 处理用户交互
10.6 小结
第11章 DOM未来的发展方向
11.1 DOM的发展方向
11.2 DOM Level 3中已被提议的修改
11.2.1 一般性修改
11.2.2 抽象模式支持
11.2.3 错误处理
11.2.4 加载和保存DOM文档
11.2.5 把应用程序指定的数据添加给节点
11.2.6 判断节点的相对文档位置
11.2.7 对XPath的支持
11.3 DOM有待增强的其他功能
11.3.1 DOM对XSLT的支持
11.3.2 面向事务的处理
11.4 小结
附录A DOM Core Level 1 API参考
A.1 DOM接口继承树
A.2 Attr接口
A.2.1 属性
A.2.2 方法
A.3 CDATA接口
A.3.1 属性
A.3.2 方法
A.4 CharacterData接口
A.4.1 属性
A.4.2 方法
A.5 Comment接口
A.5.1 属性
A.5.2 方法
A.6 Document接口
A.6.1 属性
A.6.2 方法
A.7 DocumentFragment接口
A.7.1 属性
A.7.2 方法
A.8 DocumentType接口
A.8.1 属性
A.8.2 方法
A.9 DOMImplementation接口
A.9.1 属性
A.9.2 方法
A.10 DOMException接口
A.10.1 常量
A.10.2 属性
A.10.3 方法
A.11 Element接口
A.11.1 属性
A.11.2 方法
A.12 Entity接口
A.12.1 属性
A.12.2 方法
A.13 EntityReference接口
A.13.1 属性
A.13.2 方法
A.14 NamedNodeMap接口
A.14.1 属性
A.14.2 方法
A.15 Node接口
A.15.1 常量
A.15.2 属性
A.15.3 方法
A.16 NodeList接口
A.16.1 属性
A.16.2 方法
A.17 Notation接口
A.17.1 属性
A.17.2 方法
A.18 ProcessingInstruction接口
A.18.1 属性
A.18.2 方法
A.19 Text接口
A.19.1 属性
A.19.2 方法