有时候发现insertBefore还是很有用的。
在指定的内容前插入指定的元素,果然还是很不错:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>
<div id="test">
<div class="x1">Node1</div>
<div class="x1">Node2</div>
<div class="x1">Node3</div>
</div>
<script type="text/javascript">
var oTest = document.getElementById("test");
//var x2= document.getElementsByTagName("div");
var x2 = document.getElementsByClassName("x1");
var newNode = document.createElement("div");
newNode.innerHTML = "This is a test";
oTest.insertBefore(newNode,x2[0]);
oTest.removeChild(x2[0]);
</script>
</body>
</html>

这段代码的主要来源是http://bbs.blueidea.com/thread-2877763-1-1.html,果然是可以做参考的。比如放在哪个节点前,删除哪个节点。
如果将节点都存储到localStorage中,就能够随时替换节点了。
做个纪录