真机上wx.getSystemInfo返回的高度没有去掉tabbar
发布于 6 年前 作者 shenyan 10683 次浏览 来自 问答

  wx.getSystemInfo({

    success: function (res) {

      windowHeight = res.windowHeight

      console.log(res.windowHeight)

    }

  })

华为荣耀9上,

没有tabbar  windowHeight高度568px;

有tabbar  windowHeight返回高度562px;

没有tabbar  100vh高度显示568px;

有tabbar  100vh高度显示514px;

测试了小米手机再有tabbar的时候返回值也不对。

5 回复

tabbar的高度固定吗?我有什么方法获取到真实的可用高度?

    var query = wx.createSelectorQuery()

var query = wx.createSelectorQuery()
query.select('.getheight').boundingClientRect()
query.selectViewport().scrollOffset()
query.exec(function (res) {
  console.log(res);
})

<view class='getheight'>
<view>

用view包裹一下,然后使用上面的方法可以正确的获取手机可用区域的高度。但是,需要再页面渲染完成后调用。
wx.getSystemInfo如果能修复还是修复一下比较好。

wx.createSelectorQuery()异步方法,获取的很慢,可能是腾讯写了异步回调,当页面完全渲染完成后再返回数据。

用view包裹一下,然后使用上面的方法可以正确的获取手机可用区域的高度。测试了一下直接写在onload中也可以获取到。

wx.createSelectorQuery()获取的高度也不对。结果没有任何变化。什么鬼。。。。。。。
没有tabbar  windowHeight高度568px;

没有tabbar  100vh高度显示568px;

有tabbar  windowHeight返回高度562px;

有tabbar  100vh高度显示514px;

回到顶部