Closed. This question is opinion-based。它当前不接受答案。
想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。
5年前关闭。
我需要使用JavaScript在网格中向用户呈现大量数据行(即数百万行)。
用户不应一次看到页面或仅查看有限数量的数据。
相反,应该看起来所有数据都可用。
并非一次下载所有数据,而是在用户访问时下载小块(即,通过滚动网格)。
这些行不会通过此前端进行编辑,因此可接受只读网格。
对于这种无缝分页,存在哪些用JavaScript编写的数据网格?
想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。
5年前关闭。
我需要使用JavaScript在网格中向用户呈现大量数据行(即数百万行)。
用户不应一次看到页面或仅查看有限数量的数据。
相反,应该看起来所有数据都可用。
并非一次下载所有数据,而是在用户访问时下载小块(即,通过滚动网格)。
这些行不会通过此前端进行编辑,因此可接受只读网格。
对于这种无缝分页,存在哪些用JavaScript编写的数据网格?
最佳答案
(免责声明:我是SlickGrid的作者)
更新
现在已在SlickGrid中实现。
请参见http://github.com/mleibman/SlickGrid/issues#issue/22,以获取有关使SlickGrid处理更多行的正在进行的讨论。
问题在于SlickGrid不会虚拟化滚动条本身-可滚动区域的高度设置为所有行的总高度。用户滚动时,行仍在添加和删除,但是滚动本身是由浏览器完成的。这使它可以非常快速而流畅(众所周知,滚动事件很慢)。需要注意的是,浏览器的CSS引擎中存在一些错误/限制,这些错误/限制限制了元素的潜在高度。对于IE,恰好是0x123456或1193046像素。对于其他浏览器,它更高。
在“大号固定”分支中有一个实验性的解决方法,它通过使用“页面”设置为1M像素高度填充可滚动区域,然后在这些页面中使用相对位置来显着提高该限制。由于CSS引擎中的高度限制似乎有所不同,并且明显低于实际布局引擎中的高度,因此这给了我们更高的上限。
我仍在寻找一种方法,以达到无限制的行数而又不放弃SlickGrid当前在其他实现上所拥有的性能优势。
Rudiger,能否详细说明如何解决此问题?
关于javascript - 数百万行的JavaScript数据网格,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23380049/