我正在尝试使用JavaScript更新第一行的宽度,我有多个表格。
<table page="1">
<tbody>
<tr><td>aaaa</td><td>bbbbb</td></tr>
<tr><td>cccc</td><td>ddddd</td></tr>
....
</tbody>
</table>
<table page="2">
<tbody>
<tr><td>eeee</td><td>fffff</td></tr>
<tr><td>gggg</td><td>hhhhh</td></tr>
....
</tbody>
</table>
以及一个数组
var cw = ["100","500"];
我正在尝试创建一个函数,仅更改每个表格中第一行的td元素,因此最终结果应为:
<table page="1">
<tbody>
<tr><td style="width:100px;">aaaa</td><td style="width:500px;">bbbbb</td></tr>
<tr><td>cccc</td><td>ddddd</td></tr>
....
</tbody>
</table>
<table page="2">
<tbody>
<tr><td style="width:100px;">eeee</td><td style="width:500px;">fffff</td></tr>
<tr><td>gggg</td><td>hhhhh</td></tr>
....
</tbody>
</table>
因为我刚开始使用JavaScript,所以我不知道最好的做法,所以我从不同的例子中组合了这个jsfiddle,问题是我会在一个页面上有很多表格(大约300个),我想知道这是否是最好的方法:
var cw = ["100","500"];
var i,j,col;
var tables = document.getElementsByTagName("table");
for(i = 0;i<tables.length;i++) {
for ( j = 0, col; col = tables[i].rows[0].cells[j]; j++) {
col.style.width = cw[j]+'px';
}
}
我担心使用两个循环会使浏览器无响应或变慢,所以这是否可以通过JavaScript或jquery更安全地完成? 此外,我需要它在IE、Chrome和Firefox上正常工作。 谢谢。