【发布时间】:2013-08-15 00:13:12
【问题描述】:
现在在我的 html 页面上动态生成大约 15 个不同的表,每个表中大约有 1-15 行。当用户单击某个单元格时,嵌套表会出现在下面的行中。一切看起来都很好,它做了它需要做的事情,只是从用户单击单元格打开嵌套表到嵌套表实际显示大约有 2 秒的延迟。
我可以做些什么来缩短时间?或者有什么缓解这种情况的小窍门?
简单的例子。在实际应用程序中授予,会有更多的表/行。这个例子没有延迟,因为它纯粹是为了展示我是如何设置的 http://jsfiddle.net/poppypoop/ZUTXT/1/
我的 HTML
<table>
<tr>
<td></td>
<td class="clickme">
<div style="display: none;">
<table>
<tr>
<td></td>
<td></td>
<td></td>
</tr>
</table>
</div>
</td>
<td></td>
</tr>
在这个嵌套表格中,我在每个单元格中为我的应用程序显示各种信息。通常嵌套表可以有 1 行到 10 行之间的任意位置
所以当用户点击单元格以显示嵌套表格时,这里是被调用的 javascript
$(item).closest("tr").after("<tr><td></td><td colspan = '999'>" + $(item).next().html() + "</td></tr>");
注意 我正在使用 IE10 和 IE9
【问题讨论】:
-
不要使用jQuery,你会获得性能
-
在 Firefox 26 上我没有看到任何延迟。你用的是哪个浏览器?
-
您是否使用 AJAX 来获取嵌套表?要么,要么你运行浏览器的硬件是完整的裤子
-
@Oriol,在看到一些人手动破解的方式之后,我想说对于很多人来说,使用 jQuery 更快。
-
你能在页面加载时预加载所有内容并保持隐藏吗?
标签: javascript jquery html css performance