DOM技术:
DOM技术是Document Object Model(文档对象模型)的简称,是表示文档(如HTML文档)和访问、操作构成文档的各种元素(如HTML标记和文本串)的应用程序接口(API)。它提供了文档中独立元素的结构化、面向对象的表示方法。并允许通过对象的属性和方法访问这些对象。另外,文档对象模型还提供了添加和删除文档对象的方法,这样能够创建动态的文档内容。DOM也提供了处理事件的接口,它允许捕获和响应用户以及浏览器的动作。
DOM分层结构:
当网页被加载时,浏览器会创建页面的DOM。它把 HTML 文档呈现为带有元素、属性和文本的树结构(节点树)。整个文档是一个文档节点,每个 HTML 标签是一个元素节点,包含在 HTML 元素中的文本是文本节点 ,每一个 HTML 属性是一个属性节点,注释属于注释节点。
我们可以通过DOM对象去修改元素的内容以及属性的数值。
HTML DOM 节点树:
节点关系:
节点树中节点彼此之间存在层级关系。通常用父(parent)、子(child)和兄弟(sibling)等术语来描述次关系。父节点拥有子节点,同级子节点又被称为兄弟节点。
在节点树中,顶端节点被称为根(root),每个节点都有父节点、除了根(它没有父节点),一个节点可拥有任意数量的子节点,同胞是拥有相同父节点的节点。
遍历文档:
在DOM中,HTML文档各个节点被视为各种类型的Node对象,并且将HTML文档表示为Node对象的树。对于任何一个树形结构来说,最常做的就是遍历树。在DOM中,可以通过Node对象parentNode、firstChild、nextChild、lastChild、previousSibling等属性来遍历文档树。
Node对象的常用属性:
操作文档:
在DOM中不仅可以通过节点的属性查询节点,还可以对节点进行创建、插入、删除和替换等操作。这些操作都可以通过节点(Node)对象提供的方法来完成。
Node对象常用方法:
获取文档中的指定元素,主要有以下两种方式:
通过元素的ID属性获取元素。
document.getElementById(“id1”);表示获取文档中Id属性为id1的节点。
通过元素的name属性获取元素。
document.getElementByName(“name”);表示获取所有Name属性为name的所有元素,返回值是一个数组,而非单个元素。若想获取单个元素可以通过下标,比如:
document.getElementByName(“name”)[0];