内容简介
通过《DOM启蒙》,读者将学习如何通过文档对象模型(DOM)更地操作HTML,而无需DOM操作库的帮助。作者Cody Lindley(jQuery手册)用菜谱风格的代码示例,用演示多种节点对象的工作方式,带你领略现代DOM理念。
在过去的十年里,框架简化了DOM的用法,后者因此被开发者尘封在前者之下。《DOM启蒙》通过现代浏览器原生的概念与代码,将这些工具带回视线。读者将理解jQuery在DOM脚本编写中扮演的角色,并学习如何在移动应用和特定浏览器中直接使用DOM编写应用程序。
目录
前言
序言
第1章 节点概览
1.1 文档对象模型(document Object Model,亦称 DOM)是个由Javascript节点对象组成的层次结构/树
1.2 节点对象类型
1.3 继承自节点对象的子节点对象
1.4 用于与节点打交道的属性与方法
1.5 识别节点的类型与名称
1.6 获取节点的值
1.7 使用 Javascript 方法来创建元素与文本节点
1.8 使用 Javascript 字符串创建并向DOM中添加元素与文本节点
1.9 提取DOM树中的部分作为Javascript字符串
1.10 使用 appendChild() 与 insertBefore() 向DOM中插入节点对象
1.11 使用 removeChild() 与 replaceChild() 来移除与替换节点
1.12 使用 cloneNode() 来复制节点
1.13 理解节点集合(即 NodeList 与 HTMLCollection)
1.14 获取所有直属子节点的列表/集合
1.15 将 NodeList 或者 HTMLCollection 转换成Javascript 数组
1.16 遍历 DOM 中的节点
1.17 使用 contains() 与 comparedocumentPosition()验证节点在 DOM 树中的位置
1.18 判断两个节点是否相同
第2章 文档节点
2.1 文档节点概览
2.2 HTML 文档属性与方法(包括继承的)
2.3 获取 HTML document 通用信息(标题、链接、提及者、修改时间及兼容模式)
2.4 文档子节点
2.5 document 提供的 、、及捷径
2.6 使用 document.implementation.hasFeature() 探测 DOM 规范/特性
2.7 获取文档中当前聚焦/激活节点的引用
2.8 判断文档或者文档中任何节点得到焦点
2.9 document.defaultView 是个到顶部/全局对象的捷径
2.10 使用 ownerdocument 从某一元素取得文档的引用
第3章 元素节点
3.1 HTML*Element 对象概览
3.2 HTML*Element 对象属性与方法(包括继承的)
3.3 创建元素
3.4 获取元素的标签名
3.5 获取元素属性与值的列表/集合
3.6 获取、设置及移除元素的属性值
3.7 验证元素是否有某一特定属性
3.8 获取类属性值列表
3.9 添加与移除类属性中的部分值
3.10 变换某个类属性值
3.11 判断类属性值是否含有某一特定值
3.12 获取与设置 data-* 属性
第4章 元素节点选取
4.1 选取特定元素节点
4.2 选取/创建一个元素节点列表(即 NodeList)
4.3 选取所有的直属子元素节点
4.4 选取与上下文有关的元素
4.5 预定义的元素节点选取/列表
4.6 使用 matchesSelector() 验证元素会否被选取
第5章 元素节点几何量与滚动几何量
5.1 元素节点尺寸、偏移及滚动概览
5.2 获取元素相对于 offsetParent 的 offsetTop 及 offsetLeft 值
5.3 使用 getBoundingClientRect() 获取元素相对于视区的Top, Right, Bottom及Left边沿偏移量
5.4 获取元素在视区中的尺寸(边框 + 填充 + 内容)
5.5 获取元素在视区中的尺寸(填充 + 内容),不含边框
5.6 使用 elementFromPoint() 获取视区中某一特定点上层的元素
5.7 使用 scrollHeight 及 scrollWidth 获取滚动元素的尺寸
5.8 使用 scrollTop及scrollLeft 获取并设置从上、左边滚动的距离
5.9 使用 scrollIntoView() 滚动元素到视区
第6章 元素节点内联样式
6.1 样式属性(亦称元素内联 CSS 属性)概览
6.2 获取、设置及移除单个内联 CSS 属性
6.3 获取、设置及移除所有内联 CSS 属性
6.4 使用 getComputedStyle() 获取元素的已计算样式(即包含任何级联样式的实际样式)
6.5 使用 class 及 id 属性应用或者移除元素上的 CSS 属性
第7章 文本节点
7.1 文本对象概览
7.2