- DOM是啥?
- DOM和HTML有啥区别?
- DOM操作?
解答
- DOM就内存中树,是对HTML和XML的标准API
- DOM操作就是树的操作,节点的操作,获取、新增、修改、删除
DOM概述
- 节点名称 nodeName
- 节点类型 nodeType
- 节点内容 nodeData
- 父节点、子节点、兄弟节点
DOM操作
document.getElementById()
document.getElementsByTagName()
document.getElementsByClassName()
document.querySelectorAll()
<div id="d1" class="divC" style={border:1px solide blue}>
const dom = document.getElementById('d1')
dom.style
dom.id
dom.className
dom.nodeName
dom.nodeType
dom.setAttribute(k,v)
dom.getAttribute(k)
const dom = document.getElementById('d1')
const p1 = document.createElement('p')
p1.innerHTML=' this is p1'
dom.appendChild(p1)
dom.ChildNodes
Array.prototype.slice.call(dom.childNodes).filter(child=>{
if(child.nodeType === 1) return true
return false
})
dom.parentNode
dom.removeChild(dom[0])
DOM性能
- 避免频繁DOM操作
- DOM查询做缓存
- 频繁的操作改成一次性操作