我有一个巨大的表格,随着用户向下滚动(自动预加载接下来的行),表格会变得越来越大。在某个时候,浏览器变得缓慢,当我点击或尝试滚动时,它开始暂停一会儿,且随着行数的增加变得更加缓慢。我想知道页面可以容纳多少元素,是否有任何限制?或者可能只是我的JavaScript代码有泄漏(尽管我只有一个事件处理程序,附加到表格的tbody上-以及解析冒泡mousedown事件的脚本)。
更新:在加载了一千行后延迟变得显著。滚动速度本身还是相当可接受的,但是例如通过单个附加在tbody上的事件处理程序高亮显示所选行非常痛苦(需要至少2-3秒钟,而且延迟随着行数的增加而增加)。我在所有浏览器上都遇到了延迟。不仅仅是我,几乎每个访问该页面的人都有这个问题,因此我认为它在某种程度上影响了每个平台。
更新:我在这里提供了一个简单的示例:http://client.infinity-8.me/table.php?num=1000(您可以将任何数字传递给num),它基本上渲染了一个带有num行的表格,并且只有一个事件处理程序附加到父表中。我应该从这个例子中得出结论,实际上并没有明显的性能下降,是由于子元素的数量引起的。因此,可能是其他地方有泄漏:(