吸顶卡顿问题

产品要求做个吸顶效果。ok做。
没想到这个在普通前端里很简单的事情到小程序里就这么费劲。哎,说说心路历程。
首先想到的当然是scroll-view的bindscroll了,监听一下scroll Top到一定高度就改变css样式为fixed。嗯,没毛病。
结果安卓各种卡,甚至ios也卡。
ok,换成onPageScroll,嗯也卡。
找原因,发现是setData耗时太久,小程序里官网文档里写了,页面渲染是在setData执行完之后。也就是说页面渲染是异步的。这就麻烦了,因为不管使用什么事件,最后都需要setData。
既然绕不开setData,那就想办法用css的方式解决。嗯,用position: sticky;
哈哈,css总不会再卡了吧。嗯实测果然不卡,但是特么兼容性太差。很多设备都不支持。哎,css也pass了。
实在没办法了,跟产品商量了下。改吸顶为吊顶了。。
办法是:本来下面的tap要吸顶的。现在不让它吸顶了,然后在顶部的上面,超出浏览器部分再写一个tap。当tap向上滑动到超出浏览器时,让顶部的tap滑动下来。做了一个伪吸顶效果。

你可能感兴趣的:(吸顶卡顿问题)