拍摄照片后,页面滚动条没有停留到当前位置(拍照组件化会出现这个问题)

该代码段展示了如何在微信小程序中利用onPageScroll事件获取并存储用户滚动位置,然后在onShow时通过wx.pageScrollTo恢复滚动条到上次的位置。如果wx.pageScrollTo不可用,提示用户升级微信版本。
摘要由CSDN通过智能技术生成

第一步:使用onPageScroll获取当前用户的最后一次滚动位置,用scrollTop 存储,(scrollTop 在页面最顶端自定)

//小程序自带监听滚动位置
onPageScroll:(function () {
  let timer = null;
  return function (e) {
      console.log("在滚动",e);
      // 监听页面的滚动开始和结束
      clearTimeout(timer);
      this.scrollIng = true;
      timer = setTimeout(() => {
          console.log("滚动结束",e);
          this.scrollIng = false;
      }, 300);
      this.scrollTop = e.scrollTop;
  };
})(),

第二步:使用onshow监听页面展示,使用pageScrollTo,来将滚动条重置到上次滑动的最后的位置

onShow() {
   let _this=this;
   setTimeout(() => {
     if (wx.pageScrollTo) {//判断这个方法是否可用
       console.log(_this.scrollTop,'我展示了,我并且要将滚动条位置变化了');
       wx.pageScrollTo({
         scrollTop: _this.scrollTop ? _this.scrollTop :0
       })
     } else {
      wx.showModal({
       title: '提示',
       content: '当前微信版本过低,无法使用该功能,请升级到最新微信版本后重试。'
      })
     }
   }, 500);
 },
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值