我读过 createDocumentFragment 比在 for 循环中将元素一个一个地附加到 DOM 快得多,例如,请参见此处。
我想做的事:
- 在文档片段中创建表格列。此列应包含数组中的数字(例如“评级”)。
- 之后,我想用新列(“片段”列)替换现有列。所以我可以一次将整个列放到 DOM 中。
我的问题:
如果已经有一个列,我真的不知道如何替换现有列。另一方面,附加是没有问题的。
我的 JSfiddle:http: //jsfiddle.net/LEqG9/2/
HTML
<table id = "table">
<tr>
<th>Name</th>
<th>Rating</th>
</tr>
<tr>
<td>A.H.Hattray </td>
<td id = "row0"></td>
</tr>
<tr>
<td>Icke_eben </td>
<td id = "row1"></td>
</tr>
<tr>
<td>John_Doe123 </td>
<td id = "row2"></td>
</tr>
</table>
Javascript
var rating = [1, 10, 3];
var fragment = document.createDocumentFragment();
for (var i = 0, len = rating.length; i < len; i++){
var element = document.createElement('tr');
element.innerHTML = rating[i];
fragment.appendChild(element);
}
document.getElementById('table').appendChild(fragment); //I know here should be the code to replace the second column!