由于页面的DOM树是 Activity 的并且始终反射(reflect)在浏览器中,因此出于某种目的修改此DOM树而不影响实际呈现的树的最佳方法是什么?假设我的目的是交换某些子节点,并查看DOM树仍然多么相似。

创建重复树是唯一的解决方案吗?如果是,是否有执行此操作的功能?还是我需要编写自己的函数来创建树的副本。我不需要元素对象的所有属性,因此我可以创建一个具有一些指向 sibling 和 child 的属性的简单对象。

最佳答案

您可以在其他节点上使用document.cloneNode(true)或相同的方法。 cloneNode 克隆任何节点,并且true表示它应该是递归的(深层的)。显然,在大页面上这可能会带来很大的性能成本。

10-07 18:06