document.createElement('元素名'); // 创建新的元素节点,参数不区分大小写
document.createAttribute('属性名'); // 创建新的属性节点
document.createTextNode('文本内容'); // 创建新的文本节点
document.createComment('注释节点'); // 创建新的注释节点
document.createDocumentFragment( ); // 创建文档片段节点
文档节点(document)——整个HTML文档document对象作为window对象的属性存在的,我们不用获取可以直接使用。
元素节点(Element)——HTML文档中的HTML标签。
属性节点(Attribute)——元素的属性 表示的是标签中的一个一个的属性,这里要注意的是属性节点并非是元素节点的子节点,而是元素节点的一部分。
文本节点(Text)——HTML标签中的文本内容。
DocumentType——doctype标签(比如<!DOCTYPE html>)。
Comment——注释
DocumentFragment——文档的片段
var div = document.createElement('div');
var text = document.createTextNode('文本节点');
var comment = document.createComment('注释');
div.appendChild(comment);
div.appendChild(text);
document.body.appendChild(div);
// 文档碎片节点
var fragment = document.createDocumentFragment();
fragment.appendChild(div);
document.body.appendChild(fragment);
var element = document.getElementsByTagName('div')[0];
// 添加属性节点
var attr = document.createAttribute('id');
attr.value = 'idValue';
element.setAttributeNode(attr);
执行结果为
DOM节点操作-CSDN博客
在末尾添加节点 node.appendChild(child)
在指定元素之前插入一个元素 node.insertBefor(child,指定元素)
删除元素 node.removeChild(child)
克隆元素
node.cloneChild()/ node.cloneChild(false) ===>浅克隆
node.cloneChild()/ node.cloneChild(true) ===>深克隆