二、元素操作
2.1 创建元素document.createElement(type)
使用方式:
document.createElement(type)
type:元素类型(标签名字符串)
返回值:创建出来的元素
1 | // 创建元素 |
孤儿节点,不在DOM树上
2.2 上树father.appendChild(child)
使用方式:
father.appendChild(child)
child:要追加的子节点
father:父节点
返回值:child
最终效果:将child追加到father中,作为father的childNodes中的最后一个子元素
结构:
1 | <div id="box"></div> |
执行代码:
1 | // 创建元素 |
结果:
2.3 下树father.removeChild(child)
使用方式:
father.removeChild(child)
child:要移除的子节点
father:父节点
返回值:child
最终效果:child从father的子节点中移除
1 | // 点击btn让p元素下树 |
2.4 插入father.insertBefore(newChild,oldChild)
father.insertBefore(newChild,oldChild)
newChild:要插入的元素
oldChild:参照元素(oldChild为null时,效果等价于appendChild方法)
返回值:newChild
最终效果:newChild插入到oldChild前面,作为它的兄弟节点存在
1 | // 创建元素 |
2.5 替换father.replaceChild(newChild,oldChild)
使用方式:
father.replaceChild(newChild,oldChild)
newChild:要替换上的元素
oldChild:被替换下的元素
返回值:oldChild
最终效果:newChild替换掉oldChild
1 | // 创建元素 |
2.6 克隆node.cloneNode(boolean)
使用方式:
node.cloneNode(boolean)
接受一个参数就是布尔值:
默认是false,只复制自身
当传递true的时候,则连同子节点一同复制
不传递参数,默认false,只复制自身:
1 | // 获取ul |
只复制自身,孤儿节点:
- 传递true,连同子节点一同复制:
1 | // 获取ul |
连同子节点一同复制,但仍是孤儿节点:
- 上树:
1 | // 上树 |
追加到body中的最后一个字节点: