小程序
小游戏
企业微信
微信支付
扫描小程序码分享
onPageScroll监听页面,滑动到某位置置顶元素,但是ios真机测试时滑的很快,会延迟好几秒才置顶?可否改善?有替代方法吗?
以下是代码片段:
https://developers.weixin.qq.com/s/u1xqBCmZ7qaQ
5 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
不要在onPageScroll函数中频繁调用setData,非常耗性能的。
吸顶效果可以使用样式 position: sticky ; top: 0;
你只需要保证你需要实现吸顶效果的元素是page的子元素就行了
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
我去 写了差不多两年前端了 都没发现吸顶这个css,我尼玛,我今天写这个,就特别好奇为啥人家的不卡顿,可是监听滚动绝对定位百分百卡顿的,居然还有个css吸顶效果,看来得出去打工,不能闭门造车啦
可以用vant 的插件 tab 自带吸顶。
老哥解决了吗?我这边也是,预览安卓ios都没问题,但是真机调试ios只有在滚动结束才会触发事件
这个问题很容易解决。
思路很简单,规定一个刷新率,比如5。函数每调用5次,再执行一次渲染。这样基本上可以解决低效的问题。
onPageScroll:
function
(e){
if
(
this
.data.setDataCount ||
.data.setDataCount<=0){
//执行渲染
.setData(e)
//重置次数
.data.setDataCount = 5
}
else
{
//倒数。
.data.setDataCount -= 1
//第一次调用,建立变量
.data[
'setDataCount'
] = 5
},
但是,过快滑动可能导致部分区域被忽略。这个可以自行优化
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
不要在onPageScroll函数中频繁调用setData,非常耗性能的。
吸顶效果可以使用样式 position: sticky ; top: 0;
你只需要保证你需要实现吸顶效果的元素是page的子元素就行了
我去 写了差不多两年前端了 都没发现吸顶这个css,我尼玛,我今天写这个,就特别好奇为啥人家的不卡顿,可是监听滚动绝对定位百分百卡顿的,居然还有个css吸顶效果,看来得出去打工,不能闭门造车啦
可以用vant 的插件 tab 自带吸顶。
老哥解决了吗?我这边也是,预览安卓ios都没问题,但是真机调试ios只有在滚动结束才会触发事件
这个问题很容易解决。
思路很简单,规定一个刷新率,比如5。函数每调用5次,再执行一次渲染。这样基本上可以解决低效的问题。
onPageScroll:
function
(e){
if
(
this
.data.setDataCount ||
this
.data.setDataCount<=0){
if
(
this
.data.setDataCount<=0){
//执行渲染
this
.setData(e)
//重置次数
this
.data.setDataCount = 5
}
else
{
//倒数。
this
.data.setDataCount -= 1
}
}
else
{
//第一次调用,建立变量
this
.data[
'setDataCount'
] = 5
}
},
但是,过快滑动可能导致部分区域被忽略。这个可以自行优化