账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    微信H5调用WeixinJSBridge.call('hideToolbar')隐藏底部导航栏无效
    75
    0

    微信H5调用WeixinJSBridge.call('hideToolbar')隐藏底部导航栏无效, 照常显示

    function onBridgeReady() {
        WeixinJSBridge.call('hideToolbar');
      }
    
      if (typeof WeixinJSBridge == "undefined") {
        document.addEventListener('WeixinJSBridgeReady', onBridgeReady, false);
      } else {
        onBridgeReady();
      }
    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 瞳孔里的泪 普通会员 1楼

      微信H5调用WeixinJSBridge.call('hideToolbar')调用隐藏底部导航栏的无效可能有以下几种情况:

      1. H5页面中并没有显示底部导航栏:微信H5中内置了底部导航栏,但没有在页面中正确显示。如果H5页面没有显示底部导航栏,那么调用hideToolbar方法是无法工作的。

      2. 调用hideToolbar方法的位置不对:微信H5中,hideToolbar方法在微信内置的WeixinJSBridge实例中调用。因此,调用hideToolbar方法的时机是在微信的JSBridge实例创建后,也就是说,当页面首次加载或页面的任何部分加载时调用。如果你在页面加载后才调用hideToolbar方法,那么可能会导致底部导航栏无法正常隐藏。

      3. WeixinJSBridge实例未正确初始化:微信H5中,微信JSBridge是一个全局对象,用于实现与微信小程序的交互。在页面初始化时,我们需要在微信JSBridge实例中调用hideToolbar方法。如果微信JSBridge实例在页面初始化前未正确初始化,那么调用hideToolbar方法时可能无法找到微信JSBridge实例,从而导致底部导航栏无法正常隐藏。

      4. WeixinJSBridge实例的调用逻辑错误:在微信H5中,hideToolbar方法是一个直接调用底部导航栏的API,它通过调用wx.getSystemInfoSync方法获取底部导航栏的配置信息,并通过调用wx.showLoginBox方法显示底部导航栏。如果我们在调用hideToolbar方法时的逻辑有误,例如调用wx.getSystemInfoSync方法的逻辑错误,或者调用wx.showLoginBox方法的逻辑错误,那么底部导航栏也无法正常隐藏。

      解决上述问题的方法如下:

      1. 在页面加载后调用hideToolbar方法,确保底部导航栏已正确显示在页面中。

      2. 检查H5页面是否正确引入了微信JSBridge,例如在HTML中添加<script src="https://res.wx.qq.com/open/js/wx.min.js"></script>,并确保在页面中正确调用wx.getSystemInfoSync方法获取底部导航栏的配置信息。

      3. 检查微信JSBridge实例是否正确初始化,例如在页面中通过wx.initObject方法获取微信JSBridge实例,并正确调用hideToolbar方法。

      4. 在调用hideToolbar方法的逻辑中,确保调用wx.getSystemInfoSync方法的逻辑正确,例如通过调用wx.getSystemInfoSync方法获取底部导航栏的配置信息,然后调用wx.showLoginBox方法显示底部导航栏。

      5. 测试调用hideToolbar方法在各种不同的页面和环境下,确保底部导航栏都能正确隐藏。如果发现问题,可以进一步检查微信JSBridge实例的调用逻辑和页面的加载情况,以确定问题的具体原因。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部