【发布时间】:2011-05-28 09:24:34
【问题描述】:
我一次添加大量表格行元素并遇到了一些主要瓶颈。目前我正在使用 jQuery,但如果能完成工作,我愿意接受基于 javascript 的解决方案。
我需要在给定时间附加 0-100 个表行(实际上可能更多,但我将分页超过 100 个)。
现在我正在将每个表格行单独附加到 dom...
loop {
..build html str...
$("#myTable").append(row);
}
然后我一次将它们全部淡入
$("#myTable tr").fadeIn();
这里有几件事需要考虑...
1) 我将数据绑定到每个单独的表行,这就是为什么我首先从批量追加切换到追加单独的行。
2) 我真的很喜欢渐变效果。虽然对应用程序来说不是必需的,但我非常注重美学和动画(当然不会分散应用程序的使用)。必须有一种很好的方法来对大量数据应用适度的淡入淡出效果。
(编辑)
3)我以较小的块/递归方式处理此问题的一个主要原因是我需要将特定数据绑定到每一行。我的数据绑定错误吗?有没有比将其绑定到各自的tr 更好的方法来跟踪这些数据?
在递归函数中应用大块或小块中的影响/dom操作更好吗?
在某些情况下最好选择其中的一种吗?如果有,选择合适方法的指标是什么?
【问题讨论】:
-
“绑定”是什么意思?您是在 tr 中添加数据属性还是为每一行绑定事件?
-
我正在使用 jQUERY .DATA api 绑定数据属性。
标签: javascript jquery performance dom-manipulation