从页面中删除除了一个元素

时间:2014-01-29 19:26:37

标签: javascript

我正在尝试删除网页中的所有元素。

首先,我使用getElementById()找到我的元素。然后我通过document.body.appendChild()将其移到身体的顶部。

我怎样才能删除其余的节点,但我有这个节点?

4 个答案:

答案 0 :(得分:1)

删除元素,保存引用。删除其他一切。然后插入保存的元素。

var node = document.getElementById("whatever");
if (node.parentNode) {
    var savedNode = node.parentNode.removeChild(node);
}

while (document.body.firstChild) {
  document.body.removeChild(document.body.firstChild);
}

document.body.appendChild(savedNode);

答案 1 :(得分:0)

您可以先选择这样的html节点:

var selectedNode=document.getElementById("myid");
//remove it from DOM
selectedNode.parentNode.removeChild(selectedNode);
//clear the body
document.body.innerHTML = "";
//append the selectedNode
document.body.appendChild(selectedNode);

答案 2 :(得分:0)

如果您要删除文档正文中的所有节点,我建议您复制所需的节点,从文档中删除所有节点,然后附加您复制的节点。例如:

test = document.body.getElementById(bla);
document.body.empty();
document.body.appendChild(test);

答案 3 :(得分:0)

var remain=document.getElementById('id'),
pa=document.body;

remain=remain.parentNode.removeChild(remain);// remove and save referenced element

while(pa.lastChild) pa.removeChild(pa.lastChild); // remove all other nodes

pa.appendChild(remain); //add element to empty body