我想知道是否有人可以在不卡住浏览器的情况下使用 jquery 进行最大程度的 dom 操作提供一些安全指南。
也是大规模 DOM 操作的最佳方法。
基本上在任何时候我都可以处理多达 40k li
的列表
我真正做的就是展示一个,隐藏另一个。
这是我的问题
- 理论上我可以一次操作多少个 li 而不会导致浏览器崩溃?
- 我应该如何与 li 合作?
- 作为单个对象进行操作(ul 级别)
- 循环遍历第一个列表中的每个 li,删除它们,然后循环插入每个新的 li。
- 循环 li 的 block (如果是的话,一次 10、100、1000、10000 有多大?)
- 我应该如何获取数据? (json格式)
- 通过一次 ajax 调用获取整个列表的数据(相当于 40k li)。
- 在创建页面时为每个列表插入数据(最多可以有 20 个列表 = 800,000 li's
- 进行多次 ajax 调用来获取数据(如果是的话,一次 10、100、1000、10000 有多大?)
最佳答案
如果你真的想操纵那么多,那么你可能应该采用类似 http://developer.yahoo.com/yui/3/async-queue/ 的东西。
作为一次应该使用多少组的答案,您可以建立一个校准,看看最后一组完成的速度,并相应地使用更多/更少。这可以为您提供适用于从桌面 Chrome 到移动 IE 的所有内容的东西。
ajax调用也是如此,使其能够根据网速加速。
关于javascript - 大众 Dom 操纵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4128673/