所有操作都只是为了做四件事情****增 删 改 查`******
dom节点操作
节点操作:本质上针对标签本身的增删改查
节点操作总结一点:当有明确亲戚关系的时候,使用查语法更加方便。
查:所有返回的都是dom对象
查找父元素:子元素.parent.Node--查找最近的父级元素,返回的是dom元素。
查找子元素:父元素.children---是伪元素---需要遍历,不能够使用forEach
找兄弟:nextElementSibling-------找到上一个兄弟元素
previousElementSibling----找到下一个兄弟元素
增:
创建一个新的节点***
let result = document.createElement(你添加的标签名称)
创建标签以后还需要对元素设置内容和样式:内容设置:innerText -------- innerHTMl随便一种
属性设置:元素.属性
追加节点:
parent . appendCHild( child ) ; 将child的元素添加到parent元素里面去 (最后面),追加的都是在最后面追加
parent . inserBofore( child ,refChild); 将child元素添加到refChild前面去,ref:相对引用参照
如果refChild元素获取不到,会默认一appendChild形式添加,一定要传第二个参数,为传会报错
克隆节点
模板元素.cloneNode(布尔值);false:浅拷贝,只拷贝元素结构 ; true:深拷贝,拷贝元素结构和内容
用于需要创建一个复杂的标签------前提是页面上面有一个模板节点
删除节点
parent . removChild( child ):通过父元素直接删除子元素;要求元素一定要刷当前parentd的直接子元素
element.remove(); 删除元素本身