DOM 节点的克隆和导入
前言
在使用 JS 操作 DOM 节点的时候,我们常常会用到克隆(或导入)节点的操作,那到底有哪些方法可以实现节点克隆(或导入)的效果呢?
今天,我们就来总结一下能实现节点克隆(或导入)效果的方法。
提到克隆节点,我们最先能想到的肯定是 方法。
语法
其语法如下:
let cloneNode = targetNode.cloneNode(deep);
cloneNode 最终克隆生成的节点副本。
targetNode 将要被克隆的目标节点。
deep 可选参数,表示是否需要进行深度克隆,即是否需要克隆 targetNode 下的子节点,默认为 false。
举例:
这是头部
内容一
内容二
运行结果如下:

将外部文档的一个节点拷贝一份,然后可以把这个拷贝的节点插入到当前文档中。语法如下:
let node = document.importNode(externalNode, deep);
node 从外部导入到当前文档的节点对象。
externalNode 外部文档中将要被导入的目标节点。
deep 是否深拷贝,默认为 false。
举例:
这是 Iframe 页面
这是 Iframe 内容头部
这是 Iframe 内容主体
内容头部
内容主体
最终效果如下:

从其他的document文档中获取一个节点。 该节点以及它的子树上的所有节点都会从原文档删除 (如果有这个节点的话), 并且它的 属性会变成当前的document文档。 之后你可以把这个节点插入到当前文档中。语法:
let node = document.adoptNode(externalNode);
node 从外部文档中获取到的节点对象。
externalNode 将要被导入的外部文档中的节点对象。
举例:
这是 Iframe 页面
这是 Iframe 内容头部
这是 Iframe 内容主体
内容头部
内容主体
效果:

总结
以上就是使用 JS 克隆(或导入)DOM 节点的方法总结。
~
~ 本文完,感谢阅读!
~
学习有趣的知识,结识有趣的朋友,塑造有趣的灵魂!