当列表的行数很高时(我的意思是有时只有170-200行),在向下滚动/向上滚动时,DataTable会以某种方式刷新自己,并且所有自定义的css、单击函数和事件都会被删除。此外,列表有时会结冰,或者滚动条被卡在底部。
如果我不使用DataTable.groupByColumn(5000),性能和css会更好,但我仍然会松散地单击表上的事件。
我使用极端数字的DataTable.groupByColumn()的原因是行样式。默认情况下,行的背景色是黑白的,不容易阅读和混淆。但是无论如何,即使我不使用groupByColumn(),当我在高行号列表上向下滚动时,我也会失去onClick函数.
是否有办法避免这种“刷新”,或者在DataTable上进行开发时是否需要记住最佳的行号?
例如,我创建了带有随机字符串的285行列表,以检查问题是否来自我们的数据结构,但不幸的是,在示例中也出现了同样的问题。
我们有机会优化它吗?
编辑
我已经意识到,'clusterize.js',使用DataTable,这就是为什么我使用事件委托,而不是将函数分配给每一行,但这次所有函数的工作都延迟了,这取决于列表的长度。
有人知道吗?
发布于 2020-11-05 15:01:14
正如您已经发现的,DataTable只是Clusterize.js库的一个简单包装器。因此,任何潜在的优化都必须与库的社区讨论。
https://stackoverflow.com/questions/64685479
复制相似问题