节点关系:
1. parentNode 父节点
2. childNodes 所有的子节点
3. firstChild 第一个子节点
4. lastChild 最后一个子节点
5. previousSibling 前一个兄弟节点
6. nextSibling 后一个兄弟节点
获取元素节点:
1、parentElement 获取父元素节点
2、children 获取所有子元素节点
3、firstElementChild 获取第一个子元素节点
4、lastElementChild 获取最后一个子元素节点
5、previousElementSibling 获取前一个兄弟元素节点
6、nextElementSibling 获取后一个兄弟元素节点
节点信息
nodeName 节点名称
nodeValue 节点的值
nodeType 节点类型
操作对象的属性办法
1、dom对象.属性=值
2、selected 对象的布尔属性
3、selectedlndex 选中项的下标值
4、某些表单元素可以获取到不存在的属性 select.value textarea.value
5、某些属性与标识符有冲突,被更换属性名(for -> htmlFor、 class-》className)
自定义属性名
html5建议使用自定义属性,使用```data-*```自定义一个属性
dom对象.dataset.属性名
删除自定义属性名
删除自定义属性
1. removeAttribute(属性名)
2. delete dom.dataset.属性名
操作元素的内容
innerHTML:获取和设置元素内部HTML文本
innerText: 获取和设置元素内部的纯文本,
textContent:获取和设置元素内部的纯文本,得到内部源代码中的文本(保留空格和换行)
元素的结构重构
1. 父元素.appendChild(子元素) 在某个元素的内部末尾追加一个元素
2. 父元素.inserBefore(待插入的子元素,哪个元素之前)
3. 父元素.repalceChild(替换的元素,被替换的元素)
更改页面的结构效率非常低,尽量少用。