我有一个相当大的html表,我正在使用jtemplates动态添加新行。添加行时,我需要根据bool标志显示/隐藏列。这段代码$('#tableid td:nth-child(3)').hide();
可以完成工作,但是我可以看到该列在它消失之前一瞬间显示(并且表格看起来很不稳定)。如何让它更快?
我尝试使用$('#tableid td:eq(2)').hide();
,但它只隐藏了第一行的列。有没有办法可以加快速度,让隐藏/表演顺畅?
答案 0 :(得分:1)
尝试提供您需要切换特定类的列的单元格...
<table id="tableid">
<tr>
<td>...</td> <td>...</td> <td class="toggle">...</td> <td>...</td>
</tr>
<tr>
<td>...</td> <td>...</td> <td class="toggle">...</td> <td>...</td>
</tr>
<tr>
<td>...</td> <td>...</td> <td class="toggle">...</td> <td>...</td>
</tr>
</table>
...然后把它藏在你的CSS中......
#tableid.hide_col td.toggle {
display:none;
}
所以现在唯一需要的JavaScript是将类添加到表中。
$('#tableid').addClass('hide_col')
这使得浏览器可以用最少的JavaScript开销来隐藏/显示。