如何在Javascript中按值(而不是引用)保存所选元素的节点?

时间:2016-04-15 12:03:18

标签: javascript html node.js

除了DOM中的图片外,我必须删除body中的所有内容。 所以,这就是我所做的。

  1. 在变量中存储img标记。

    var img_nodes = document.getElementsByTagName('img');

  2. 删除了body

    中的所有内容

    var body_node = document.getElementsByTagName('body'); body_node[0].innerHTML = ''

  3. 添加了存储的img节点作为子节点

    for each (child in img_nodes){ body.appendChild(child); }

  4. 但是在我运行body_node[0].innerHTML = ''之后,img_nodes变成了undefined

    我想这是因为元素节点作为对象存储在列表中(作为参考)。如何保存我选择的img_nodes对象?

1 个答案:

答案 0 :(得分:4)

您可以在清除正文内容之前克隆图像节点。见the documentation on cloneNode。例如:

Hello2