收藏
回答

wx.getMenuButtonBoundingClientRect()获取的属性,top值存在问题

框架类型 问题类型 操作系统 工具版本
小程序 Bug Windows 1.03.2010240

https://developers.weixin.qq.com/miniprogram/dev/api/ui/menu/wx.getMenuButtonBoundingClientRect.html

测试屏幕参数iphone6/7/8,在默认模式下,获取screenHeight为667px,windowHeight为603pxstatusBarHeight20px,计算顶部导航栏高度为44px,(44-32(胶囊高度))/2 = 6px (即胶囊距离状态栏底部的距离),

但是wx.getMenuButtonBoundingClientRect()获取的top值t为24px,24-20(状态栏高度) = 4px (即胶囊距离状态栏底部的距离)

通过两种计算方式得出的结果出现冲突!!!出现冲突!!!出现冲突!!!

回答关注问题邀请回答
收藏

3 个回答

  • reus
    reus
    2020-11-12

    你好 以真机和工具中wx.getMenuButtonBoundingClientRect()获取的值为准,因为真机和工具在实现上有一些差异,为了抹平差异工具上有做一些处理,所以你在工具上直接通过计算获得的top值确实会和接口返回值不同。

    2020-11-12
    有用
    回复 3
    • Shaw
      Shaw
      2020-11-13
      好的,真机上看到是一致的,开发者工具这个问题不修复一下吗,哈哈
      2020-11-13
      回复
    • 可乐加冰
      可乐加冰
      2020-12-04
      我这也出现这个问题了 而且真机也有 安卓ios都不行
      2020-12-04
      回复
    • Struggle。
      Struggle。
      2021-05-24
      ios真机与工具都不对呀,获取的值不对
      2021-05-24
      回复
  • Struggle。
    Struggle。
    2021-05-24

    请问这个是怎么解决的

    2021-05-24
    有用
    回复
  • 寒夜星辰
    寒夜星辰
    2021-04-15

    并没有文档指出胶囊一定是垂直居中的,所以(44-32(胶囊高度))/2 = 6px 是没有根据的,上边是4,下边是8也不是不行

    2021-04-15
    有用
    回复
登录 后发表内容
问题标签