scroll-view是否触底问题
众城世家聊天页面中,要实现微信那种,如果有新音讯,在底部的话就滚动到新音讯,如果没有在底部的话就不滚动,这个时候须要判断是否在底部,经uview
开发人员帮忙,进行尝试。
第一次尝试
给scroll-view
加scroll
和scrolltolower
事件,如果触发scroll
事件的话就设置不触底,如果触发scrolltolower
事件的话就触底,这个时候发现触底当前还是会触发scroll
事件的,这种计划不行。
第二次尝试
在第一次尝试的根底上,咱们给scrolltolower
事件一个提早,也就是触发scrolltolower
事件当前100ms后再设置触底,这个时候短距离滚动,还是会偶然触发scrolltolower
事件,这种计划也不行。
第三次尝试
在第二次的根底上,咱们设置很小的触底间隔lower-threshold
,设置为5,这个时候根本触底判断就很精确了,然而,这个时候有呈现个意外的状况,第一次进来的时候咱们会让页面滚动到底部,this.scrollTop = 9999
,然而这个滚动会触发scroll
事件,然而并不会触发scrolltolower
事件,这种计划也不完满。
第四次尝试
在第三次的根底上,咱们在第一次进来的时候,页面渲染完当前设置已触底,这个时候发现就算最初设置已触底,触底状态还是不触底,失败。
第五次尝试
咱们在页面渲染实现当前,提早100ms,这个时候发现触底判断就正确了。到此结束
总结
- 设置
scroll
和scrolltolower
事件,并设置lower-threshold
小一点,倡议设置为5scroll
事件触发当前设置不触底,scrolltolower
事件触发当前,提早100ms设置触底- 第一次进来页面当前,当页面渲染实现当前,提早100ms设置触底
留言
点击留言