onPageScroll 在真机上面有延迟
发布于 5 年前 作者 liliu 2375 次浏览 来自 问答
  • 当前 Bug 的表现(可附上截图)

ios是在触摸滑动停止后才会触发onPageScroll,虽然onPageScroll 一直在监听

  • 预期表现

onPageScroll 一直在监听 客户端可以立即执行

  • 复现路径
  • 提供一个最简复现 Demo

wxml

<view class=’{{isLong?“top-menu fixed”:“top-menu”}}’></view>

wxss

.top-menu{

    width: 670rpx;

    padding:15rpx 40rpx;

    /* height: 80rpx; */

    display: flex;

    align-items: center;

    text-align: center;

    border-bottom: 1px solid #cdcdcd;

    background: #f3f3f3;

    position: absolute;

    top: -26rpx;

    left: 0;

    z-index: 999

}

.fixed{

    position: fixed;

    top:0rpx;

}

js

data:{

    isLong:false

},

onPageScroll: function (e) {

console.log(e);//{scrollTop:99}

let sumNum = (this.data.height1 - 0) + (this.data.height2 - 0) + (this.data.height3 - 0) + (this.data.height4 - 0) //获取了需要变化的高度

if (e.scrollTop > sumNum && !this.data.islong ){

  this.setData({

    islong:true

  })

} else if (e.scrollTop < sumNum && this.data.islong){

  this.setData({

    islong: false

  })

}

}

1 回复

能用相交状态监听来做不?或者json里加个"usingComponents":{}试试呢

回到顶部