jwy
jwy
  • 发布:2021-01-08 11:08
  • 更新:2021-01-11 17:58
  • 阅读:731

【报Bug】部分安卓 web-view 网页 scrollTop 值有偏差

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: Win10

HBuilderX类型: 正式

HBuilderX版本号: 3.0.5

手机系统: Android

手机系统版本号: Android 10

手机厂商: 华为

手机机型: Mate 10 Pro

页面类型: vue

打包方式: 云端

项目创建方式: HBuilderX

示例代码:
$(window).scroll(  
        function() {  
            var scrollTop = $(this).scrollTop();  
            var windowHeight = $(this).height();  
            var scrollHeight = $(document).height();  

            if (scrollTop + windowHeight == scrollHeight) {  
                pageMove = 1  
            } else if (scrollTop == 0) {  
                pageMove = -1  
            }  

        });

操作步骤:

在 Hello uni-app 的本地网页 local.html 里引入 jQuery,放置如上代码

预期结果:

scrollTop 取到正确值

实际结果:

scrollTop 有偏差

bug描述:

试了 Hello uni-app 本地网页有同样问题。

放在 web-view 里的 html 页面,部分安卓手机拉到最底取到的 scrollTop 偏小,于是 scrollTop + windowHeight < scrollHeight,没法触底。

目前试过没问题的手机是苹果、一台比较老的锤子:

{"scrollTop":1669,"pageMove":1,"windowHeight":570,"scrollHeight":2239}

试过有问题的手机有华为、魅族、小米、realme:

{"scrollHeight":2240,"scrollTop":1505.6666259765625,"windowHeight":612,"pageMove":0}

2021-01-08 11:08 负责人:无 分享
已邀请:
DCloud_UNI_Anne

DCloud_UNI_Anne

  • jwy (作者)

    hello uni-app 就可以试,已上传 hybrid 文件夹,覆盖并运行 app 后前往内置组件-网页-本地网页,触底应有提示,部分安卓手机没有。

    2021-01-12 14:13

  • DCloud_UNI_Anne

    回复 jwy: 未复现,能否确定哪个机型必现?并提供机型信息。

    2021-01-12 20:46

  • jwy (作者)

    回复 DCloud_UNI_Anne: 试过不行的有华为 Mate 10 Pro、realme x7 pro、红米 7a,还有一台魅族暂时没有型号回头看下。不行的这几台都是全面屏,没问题的那台老锤子是有实体触摸键的,不确定跟这个有没关系。谢谢。

    2021-01-13 09:28

该问题目前已经被锁定, 无法添加新回复