小程序 - wx.pageScrollTo安卓手机上滚动异常

2023-12-24 13:32

本文主要是介绍小程序 - wx.pageScrollTo安卓手机上滚动异常,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

官方文档 wx.pageScrollTo(Object object)

该效果在微信开发者工具的模拟器,苹果手机上都正常滚动;但是在安卓手机上看不到正常的滚动效果,我见到过的bug有

  1. 从当前位置,滚动到最顶部,再滚动到指定位置
  2. 滚动到指定距离的偏差大

如果只达到指定距离,而忽略滚动效果,可以在安卓手机上避免这样的bug出现,只需要把duration设置为0(直接跳到指定位置)

代码如下:

wx.pageScrollTo({scrollTop: 100,duration: 0
})

也可以针对安卓、苹果做不同的处理(仅苹果出现滚动效果)。此时需要获取用户设备信息,官方文档  wx.getSystemInfo(Object object),主要使用到system属性

封装公共代码:

systemType () {let systemType = ''wx.getSystemInfo({success: (res) => {let system = res.systemif (system.indexOf('iOS') >= 0)systemType = 'iOS'elsesystemType = 'Android'}})return systemType
}

在涉及滚动操作的地方执行以下代码:

let systemType = this.systemType()if (systemType === 'iOS') {wx.pageScrollTo({scrollTop: this.data.recommend_talk_top})
}
else {wx.pageScrollTo({scrollTop: this.data.recommend_talk_top,duration: 0})
}

注意:在切换tab栏时,应先设置tab栏当前索引值,在执行滚动

selectTab (event) {let index = event.currentTarget.dataset.indexlet article_tab_top = this.data.recommend_talk_topthis.setData({at_index: index,})wx.pageScrollTo({scrollTop: recommend_talk_top,duration: 0})
},

 

这篇关于小程序 - wx.pageScrollTo安卓手机上滚动异常的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/531940

相关文章

Java.lang.InterruptedException被中止异常的原因及解决方案

《Java.lang.InterruptedException被中止异常的原因及解决方案》Java.lang.InterruptedException是线程被中断时抛出的异常,用于协作停止执行,常见于... 目录报错问题报错原因解决方法Java.lang.InterruptedException 是 Jav

Spring Boot 中的默认异常处理机制及执行流程

《SpringBoot中的默认异常处理机制及执行流程》SpringBoot内置BasicErrorController,自动处理异常并生成HTML/JSON响应,支持自定义错误路径、配置及扩展,如... 目录Spring Boot 异常处理机制详解默认错误页面功能自动异常转换机制错误属性配置选项默认错误处理

SpringBoot 异常处理/自定义格式校验的问题实例详解

《SpringBoot异常处理/自定义格式校验的问题实例详解》文章探讨SpringBoot中自定义注解校验问题,区分参数级与类级约束触发的异常类型,建议通过@RestControllerAdvice... 目录1. 问题简要描述2. 异常触发1) 参数级别约束2) 类级别约束3. 异常处理1) 字段级别约束

Spring Boot 结合 WxJava 实现文章上传微信公众号草稿箱与群发

《SpringBoot结合WxJava实现文章上传微信公众号草稿箱与群发》本文将详细介绍如何使用SpringBoot框架结合WxJava开发工具包,实现文章上传到微信公众号草稿箱以及群发功能,... 目录一、项目环境准备1.1 开发环境1.2 微信公众号准备二、Spring Boot 项目搭建2.1 创建

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

使用Docker构建Python Flask程序的详细教程

《使用Docker构建PythonFlask程序的详细教程》在当今的软件开发领域,容器化技术正变得越来越流行,而Docker无疑是其中的佼佼者,本文我们就来聊聊如何使用Docker构建一个简单的Py... 目录引言一、准备工作二、创建 Flask 应用程序三、创建 dockerfile四、构建 Docker

Spring Boot @RestControllerAdvice全局异常处理最佳实践

《SpringBoot@RestControllerAdvice全局异常处理最佳实践》本文详解SpringBoot中通过@RestControllerAdvice实现全局异常处理,强调代码复用、统... 目录前言一、为什么要使用全局异常处理?二、核心注解解析1. @RestControllerAdvice2

Java进程异常故障定位及排查过程

《Java进程异常故障定位及排查过程》:本文主要介绍Java进程异常故障定位及排查过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、故障发现与初步判断1. 监控系统告警2. 日志初步分析二、核心排查工具与步骤1. 进程状态检查2. CPU 飙升问题3. 内存

javax.net.ssl.SSLHandshakeException:异常原因及解决方案

《javax.net.ssl.SSLHandshakeException:异常原因及解决方案》javax.net.ssl.SSLHandshakeException是一个SSL握手异常,通常在建立SS... 目录报错原因在程序中绕过服务器的安全验证注意点最后多说一句报错原因一般出现这种问题是因为目标服务器

Java对异常的认识与异常的处理小结

《Java对异常的认识与异常的处理小结》Java程序在运行时可能出现的错误或非正常情况称为异常,下面给大家介绍Java对异常的认识与异常的处理,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参... 目录一、认识异常与异常类型。二、异常的处理三、总结 一、认识异常与异常类型。(1)简单定义-什么是