onpagescroll 的一个问题 下拉刷新时跳一下 怎么解决?
发布于 7 年前 作者 juan44 8709 次浏览 来自 官方Issues

设置了一个onpagescroll监听页面上划和下划的  下划时一个按钮消失  上划时出现 但是当下拉刷新时 会跳一下 导致按钮闪一下 怎么解决啊?

onPageScroll: function (e) {
    var _this = this;
    if (e.scrollTop < this.data.top) {
      this.setData({
        fixed:true,
        hideMenu:true
      })
    }
    if (e.scrollTop >= this.data.top) {
      //判断浏览器滚动条上下滚动
      if (e.scrollTop > this.data.scrollTop || e.scrollTop == wx.getSystemInfoSync().windowHeight) {
        //向下滚动
        _this.setData({
          fixed: false,
          hideMenu: false,
        });
      } else {
        //向上滚动
        _this.setData({
          hideMenu: true,
        });
      }
      //给scrollTop重新赋值
      setTimeout(function () {
        _this.setData({
          scrollTop: e.scrollTop
        })
      }, 50)
    }
    <view class="box" wx:if="{{!hideMenu}}"></view>
    <view class="menu-button-container {{fixed?'':'fixed'}}" wx:if="{{hideMenu}}">
        <o-menu-button bind:switch="switchType"></o-menu-button>
    </view>
 
    <view class="course-container" wx:if="{{RorT}}" id="courseContainer">
    .........
    </view>

我的思路 是下划时让一个box占着 menu-button的位置  可是因为我写了下拉刷新 所以就会跳一下 导致按钮闪一下 怎么解决  求大神

1 回复

弄一个代码片段

回到顶部