我们知道,如果页面上dom数量过多,势必会影响html页面性能,尤其在无限上拉情景下,随着页面节点的加载,html页面的dom树暴增,那有没有好的方案呢?
目前我的实现方案是基于 https://juejin.im/entry/5819993fbf22ec0068aab054 此方案下进行的探索和思考。
这是我个人写的 demo
demo的tab页是按照场景进行命名的,从左到右,分别对应了不同场景。
细节的话,可以通过控制台去看demo的源码,基本上每行都有注释
网上说的较多的都是懒加载,然后dom节点高度固定的情况下的实现。
如果是dom高度不固定的情况下,有没有一个合适的方案呢?
此处先拿demo中的几个变量出来声明
contentNum 可视区域的dom数量
fixedHeight dom固定的高度
domNum dom总数量
第一种情况,知道滚动内容区dom的总数量,那我可以计算出平均一个点的dom高度fixedHeight,即 fixedHeight = domNum的总