当前位置: 代码迷 >> 综合 >> dom-day01
  详细解决方案

dom-day01

热度:71   发布时间:2023-12-01 11:10:27.0

DOM
文档对象模型
Document Object Model
将HTML中的文档都抽象成一个节点
将整篇html文档称作一个文档

html:父元素 子节点head 子节点body  子节点head和body互为兄弟节点DOM树html|  |head  body|  |title meta

html中的任意东西都是一个节点

Document类型   文档类型  document
Element类型    元素类型  div  span
Text类型       文本类型  body-->hello
Comment类型    注释类型  <!--注释-->

Node类型是以上类型的父构造函数:
nodeType
9-Document
1-Element
3-Text
8-Comment
nodeValue
节点值,一般元素节点的值是null
可以用在注释上,是注释的内容,Text上。
nodeName
节点名称,一般用在元素节点上,返回的是大写的元素名称
childNodes
document.body.childNodes
返回子节点组成的类数组对象的NodeList,包括Element,Text,Comment类型
[0]
.item(0)

类数组转换为数组:**
Array.prototype.slice.call(类数组对象,参数列表);
Array.prototype.slice.apply(类数组对象,参数数组)

     firstChild返回NodeList中的第一个,在0号位置上lastChild 返回NodeList中的最后一个,在最后的位置上nextSibling返回NodeList中的下一个兄弟节点previousSibling返回NodeList中的上一个兄弟节点parentNode返回父节点同一个NodeList中的子节点,有同一个父节点hasChildNodes()返回true/false,判断是否有孩子节点

用父节点来调用以下4个方法:

     父节点.appendChild(孩子节点)追加孩子节点到末尾父节点.insertBefore(要插入的点,参考位置的节点)在参考节点位置之前添加【插入的点】父节点.replaceChild(新节点,旧节点)以新节点替换旧节点父节点.removeChild(要删除的点)将要删除的点删除节点.cloneNode(true/false);复制节点/创建节点的副本如果参数是true,深复制,复制元素和后代,即复制节点以及整个子节点数。如果参数是false,浅复制,只复制该元素,不复制后代该方法不复制事件父节点.normalize()将相邻的Text合并HTMLCollection-->父构造函数是谁?