创建节点的另一种方法
createDocumentFragment()
一旦把节点添加到document.body(或 者它的后代节点)中,页面就会更新并反映出这个变化。对于少量的更新,这是很好的,然而,当要向document添加大量数据时,如果逐个添加这些变动, 这个过程有可能会十分缓慢。为解决这个问题,可以创建一个文档碎片,把所有的新节点附加其上,然后把文档碎片的内容一次性添加到document中,假如 想创建十个新段落。
<html>
<head>
<title>insertBefore() Example</title>
<script type="text/javascript">
function addMessages() {
var arrText = ["first", "second", "third", "fourth", "fifth", "sixth", "seventh", "eighth", "ninth", "tenth"];
var oFragment = document.createDocumentFragment();
for (var i=0; i < arrText.length; i++) {
var oP = document.createElement("p");
var oText = document.createTextNode(arrText[i]);
oP.appendChild(oText);
oFragment.appendChild(oP);
}
document.body.appendChild(oFragment);
}
</script>
</head>
<body οnlοad="addMessages()">
</body>
</html>
HTML中节点访问的方法
1.根结点的访问
Element root = document.documentElement ;
Element root = document.body;
2.其他节点的访问
<table>
<tr id="mytr">
<td>John</td>
<td>Doe</td>
<td>Alaska</td>
</tr>
</table>
在上面的HTML代码中,第一个 <td> 是 <tr> 元素的首个子元素(firstChild),
而最后一个 <td> 是 <tr>元素的最后一个子元素(lastChild)。
<tr> 是每个 <td>元 素的父节点(parentNode)。
注释:对 firstChild 最普遍的用法是访问某个元素的文本:var ele = document.getElementById("mytr");var text=ele.firstChild.nodeValue;
parentNode 属性常被用来改变文档的结构:假设您希望从文档中删除带有 id 为 "maindiv" 的节点
var x=document.getElementById("maindiv");
x.parentNode.removeChild(x);