收藏
回答

scroll-view 下拉加载更多

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug scroll-view 工具 6.7.0 2.2.0

使用scroll-view中的bindscrolltoupper事件监听上拉事件,然后在scroll-view里面内容的上面追加内容,界面会滚动到最上面,怎么能让它上上面加载出了更多的消息的时候,界面不滚动。(类似微信消息界面上拉会加载以前的消息记录,加载完成后,界面不会自动滚动到最上面)

回答关注问题邀请回答
收藏

5 个回答

  • JohnnyDan丶
    JohnnyDan丶
    2018-07-25
    1. 先把新获取数据丢到absolute窗口外的地方渲染,并获取其高度,后面有用

    2. 如果scroll-view正在滚动,延迟处理,否则直接下一步

    3. 把列表数组合并,根据先前获取的高度和当前scroll-view的实际top值来更新scroll-view的scrollTop(通过数据绑定)

      如此可以实现比较自然的向上加载效果

    2018-07-25
    有用 1
    回复 22
    • Binary
      Binary
      2018-07-25
      scroll-view 绑定scrollTop后直接滚不动了
      2018-07-25
      回复
    • JohnnyDan丶
      JohnnyDan丶
      2018-07-25回复Binary

      是不是bindscroll事件里没有延迟处理

      2018-07-25
      回复
    • Binary
      Binary
      2018-07-25回复JohnnyDan丶

      scrollTop绑定初始值为0,然后滚动的时候会自动回到原来的位置,就是滚不动了

      2018-07-25
      回复
    • Binary
      Binary
      2018-07-25回复JohnnyDan丶

      你之前这样做过吗

      2018-07-25
      回复
    • JohnnyDan丶
      JohnnyDan丶
      2018-07-25回复Binary

      做成了的,你好好再看下代码是不是粗心了?

      2018-07-25
      回复
    查看更多(17)
  • 郭玉峰 15811200580
    郭玉峰 15811200580
    2019-07-30

    写了一个demo https://developers.weixin.qq.com/s/Am5nofmm76aQ

    2019-07-30
    有用
    回复 2
  • 哎呦妈呀
    哎呦妈呀
    2018-12-01

    楼主问题解决没,我也遇到这个问题了,求指教

    2018-12-01
    有用
    回复 1
    • Binary
      Binary
      2019-06-18

      没有很好的解决,我的解决方案是:重新渲染后自动跳到了最上面,然后再迅速滚下来

      2019-06-18
      回复
  • 熊杰
    熊杰
    2018-08-13

    要做跟楼主同样的东西,楼主之前的做出来了没?准备整理一下让后来人参考参考吗?

    2018-08-13
    有用
    回复 1
    • Binary
      Binary
      2019-06-18

      没有很好的解决,我的解决方案是:重新渲染后自动跳到了最上面,然后再迅速滚下来

      2019-06-18
      回复
  • 小k
    小k
    2018-07-25

    把内容push进去呀,不要重新渲染页面

    2018-07-25
    有用
    回复 1
    • Binary
      Binary
      2018-07-25

      是unshift进去的数据,怎么不重新渲染

      2018-07-25
      回复
登录 后发表内容