Javascript DOM树重复进行操作

eup*_*a83 5 javascript dom

由于页面的DOM树是活动的并且始终反映在浏览器中,因此在不影响实际渲染树的情况下,为某种目的修改此DOM树的最佳方法是什么?假设我的目的是交换某些子节点,看看DOM树仍然有多么相似.

创建重复树是唯一的解决方案吗?如果是,是否有这样做的功能?或者我是否需要编写自己的函数来创建树的副本.我不需要元素对象的所有属性,因此我可以创建一个更简单的对象,其中包含一些指向兄弟和子节点的属性.

Mat*_*hen 7

您可以document.cloneNode(true)在另一个节点上使用或使用相同的方法. cloneNode克隆任何节点,并且true它应该是递归的(深度).显然,这可能会在大页面上产生显着的性能成本.