我从数据库中提取数百行并创建一个 JSON 对象,然后通过 jQuery 呈现。但我目前正在渲染所有减慢页面加载速度的数据对象。动态渲染 JSON 块的最佳方法是什么?此外,当用户滚动浏览呈现的显示时附加和删除呈现的块是否有意义?
问问题
1194 次
1 回答
0
通常,当您创建和添加大量 DOM 节点时,您应该使用文档片段( document.createDocumentFragment
)。 如果您要避免对每个数据元素进行重排,而是将其中的 20 个捆绑在一个片段中,并通过一次操作将其插入到主 DOM 中,那么您的代码可能会因此获得显着的性能提升。
在不了解细节的情况下,“延迟插入”数据似乎是个好主意。您应该解析 JSON 对象并将其保存在数组中,然后监视滚动位置(使用计时器以避免事件过度杀伤)并在必要时从数组中插入更多元素。我想我会尽量不删除它们,但保留你(昂贵地)插入的内容。
除此之外,请提供更多细节:如何渲染和插入元素,它们的标记有多复杂?
于 2012-07-22T20:57:25.570 回答