小程序 - 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

相关文章

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

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

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

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

Python主动抛出异常的各种用法和场景分析

《Python主动抛出异常的各种用法和场景分析》在Python中,我们不仅可以捕获和处理异常,还可以主动抛出异常,也就是以类的方式自定义错误的类型和提示信息,这在编程中非常有用,下面我将详细解释主动抛... 目录一、为什么要主动抛出异常?二、基本语法:raise关键字基本示例三、raise的多种用法1. 抛

html 滚动条滚动过快会留下边框线的解决方案

《html滚动条滚动过快会留下边框线的解决方案》:本文主要介绍了html滚动条滚动过快会留下边框线的解决方案,解决方法很简单,详细内容请阅读本文,希望能对你有所帮助... 滚动条滚动过快时,会留下边框线但其实大部分时候是这样的,没有多出边框线的滚动条滚动过快时留下边框线的问题通常与滚动条样式和滚动行

python编写朋克风格的天气查询程序

《python编写朋克风格的天气查询程序》这篇文章主要为大家详细介绍了一个基于Python的桌面应用程序,使用了tkinter库来创建图形用户界面并通过requests库调用Open-MeteoAPI... 目录工具介绍工具使用说明python脚本内容如何运行脚本工具介绍这个天气查询工具是一个基于 Pyt

Ubuntu设置程序开机自启动的操作步骤

《Ubuntu设置程序开机自启动的操作步骤》在部署程序到边缘端时,我们总希望可以通电即启动我们写好的程序,本篇博客用以记录如何在ubuntu开机执行某条命令或者某个可执行程序,需要的朋友可以参考下... 目录1、概述2、图形界面设置3、设置为Systemd服务1、概述测试环境:Ubuntu22.04 带图

Python程序打包exe,单文件和多文件方式

《Python程序打包exe,单文件和多文件方式》:本文主要介绍Python程序打包exe,单文件和多文件方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录python 脚本打成exe文件安装Pyinstaller准备一个ico图标打包方式一(适用于文件较少的程

Java空指针异常NullPointerException的原因与解决方案

《Java空指针异常NullPointerException的原因与解决方案》在Java开发中,NullPointerException(空指针异常)是最常见的运行时异常之一,通常发生在程序尝试访问或... 目录一、空指针异常产生的原因1. 变量未初始化2. 对象引用被显式置为null3. 方法返回null

Python程序的文件头部声明小结

《Python程序的文件头部声明小结》在Python文件的顶部声明编码通常是必须的,尤其是在处理非ASCII字符时,下面就来介绍一下两种头部文件声明,具有一定的参考价值,感兴趣的可以了解一下... 目录一、# coding=utf-8二、#!/usr/bin/env python三、运行Python程序四、

redis在spring boot中异常退出的问题解决方案

《redis在springboot中异常退出的问题解决方案》:本文主要介绍redis在springboot中异常退出的问题解决方案,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴... 目录问题:解决 问题根源️ 解决方案1. 异步处理 + 提前ACK(关键步骤)2. 调整Redis消费者组