从websocket页面以高速率接收超过500个数字的字符串。 就资源而言,在页面列上显示这些数字的最有效方法是什么?
到目前为止,我尝试了两种不同的方法:
这可以更有效地完成吗?因此,浏览器的CPU负载会减少。
答案 0 :(得分:1)
不要对循环内DOM中当前元素进行append或innerHTML修改。
创建或修改不在页面上的元素,然后替换或追加新元素一次。这将减少页面重绘的次数,并应尽量减少计算机上的压力。
答案 1 :(得分:1)
创建documentFragment
(http://ejohn.org/blog/dom-documentfragments/)
将所有列表元素附加到文档片段中。这不会触发文档的重绘,因为片段不是DOM的一部分。
然后,从DOM中删除现有列表,并附加片段。这一切都是立刻完成的,只能重绘一次。有关详细信息,请参阅链接的资源。