IOS下的微信H5页面的底部前进后退横栏的适配问题

Question:最近做一个在微信和支付宝内置浏览器中运行的移动web界面,前几个月ios微信更新之后,微信将后退的按钮移至了底部横栏,遮挡住了原先底部的操作按钮。由于之前的页面设计是整屏显示禁止触摸滚动效果的,就想着是不是可以隐藏微信内置的底部横栏。

Answer:

1. 经过查资料,很多人说可以调用Weixin为H5应用提供开放原生能力的JS接口来隐藏/显示底部的状态栏。代码如下:

document.addEventListener('WeixinJSBridgeReady', function onBridgeReady() {
    WeixinJSBridge.call('hideToolbar');        // 隐藏底部状态栏
    WeixinJSBridge.call('hideOptionMenu');     // 隐藏右上角的三个点的选项
    WeixinJSBridge.call('showToolbar');        // 显示底部状态栏
    WeixinJSBridge.call('showOptionMenu');     // 显示右上角的三个点的选项
});

但是实际使用过程中,发现无效,使用微信开发者工具调试,发现报错:“error:WeixinJSBridge.call方法无效”,在微信公众平台的企业微信中发现,该方法适用于企业微信,而在订阅号或者服务号的开发文档中暂未发现这个方法。

IOS下的微信H5页面的底部前进后退横栏的适配问题_第1张图片

// 接口调用代码(JavaScript) --- from 微信公众平台-企业微信开发文档
function onBridgeReady(){
   WeixinJSBridge.call('hideToolbar');
}

if (typeof WeixinJSBridge == "undefined"){
    if( document.addEventListener ){
        document.addEventListener('WeixinJSBridgeReady', onBridgeReady, false);
    }else if (document.attachEvent){
        document.attachEvent('WeixinJSBridgeReady', onBridgeReady); 
        document.attachEvent('onWeixinJSBridgeReady', onBridgeReady);
    }
}else{
    onBridgeReady();
}
// 返回说明
// 隐藏底部导航栏没有返回值。(需要显示顶部导航栏,请把hideToolbar换成showToolbar) 

2. 暂且将页面调整为可以滚动的状态==!!!目前没有看到合适的方法撒,于是,还是来个滚动条吧

你可能感兴趣的:(7788的笔记)