Listview 如何部分更新淘汰赛阵容?

Listview 如何部分更新淘汰赛阵容?,listview,knockout.js,Listview,Knockout.js,我有一个无限滚动的对象列表,以及一个全选功能 当列表的大小超过1000个对象时,浏览器仅挂起选择更新 我想使其仅更新当前视图端口中的项目 我该怎么做 编辑: 不会产生大量DOM重画,不是显示延迟的最佳方式。但你明白了。当我更新selectAll observable时,浏览器将停止工作一段时间。请提供一些您尝试过的示例代码。使用分页,而不是一次加载所有项目。请解释我如何违反社区标准,以便我将来可以提出更高质量的问题。我可能会建议在您有时间时“卸载”从DOM中删除早期项目滚动了一下。使用具有如此多

我有一个无限滚动的对象列表,以及一个全选功能

当列表的大小超过1000个对象时,浏览器仅挂起选择更新

我想使其仅更新当前视图端口中的项目

我该怎么做

编辑:


不会产生大量DOM重画,不是显示延迟的最佳方式。但你明白了。当我更新selectAll observable时,浏览器将停止工作一段时间。

请提供一些您尝试过的示例代码。使用分页,而不是一次加载所有项目。请解释我如何违反社区标准,以便我将来可以提出更高质量的问题。我可能会建议在您有时间时“卸载”从DOM中删除早期项目滚动了一下。使用具有如此多项的DOM通常不是一个好主意。另一方面,除非用户具有非常高的屏幕分辨率,否则用户可能再也看不到最上面的项目,因此,如果用户向后滚动,您可能可以将项目卸载到更高的位置,只需重新添加它们。一个非常糟糕的解决方法是成批设置选择值,让浏览器在其间更新。真正的解决方案是不让那么多的对象加载到DOM中,不管您如何做。