iOS新版微信底部返回横条问题的解决

 更新时间:2020年03月03日 09:54:41   作者:技术熊  
这篇文章主要介绍了iOS新版微信底部返回横条问题的解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

之前没有怎么接触过微信开发,只是对H5比较熟。最近维护一个微信公众号的项目,遇到了iOS端返回键的坑。

描述一下:

从公众号打开页面后,底部有个返回的小横条,恰好也挡住了页面。这不行啊,得解决。

页面的高度是调用 $(window).height();来获取的,但道理来讲应该没什么问题。
第一个反应是,要不判断一下设备,如果是iOS则给添加一个高度?
这个想法还没实行呢,就发现了一个现象。第一次进来的时候是挡着的,但是刷新一下就不挡了。然后就想着要不判断第一次进来给个刷新?

然后落实了,改代码。的确没有问题,进来之后会判断是否第一次,如果是第一次则刷新页面。刷新之后页面高度显示正常。

但是在页面加载后刷新,会有很明显的跳转,也耗资源。不是最好的解决方式。然后继续整改。

最后还是得从源头出发,找到为什么会有底部的小横条。

一般的,如果是第一个界面,是没有底部横条的。当页面发生跳转后,会有底部小横条。

然后我就在页面中找跳转,最后发现,有几行代码是给当前添加历史记录的!

代码如下:

function(){ 
 pushHistory();
 window.addEventListener("popstate", function(e) {
 WeixinJSBridge.invoke('closeWindow',{},function(res){ });
 }, false); 
 
 function pushHistory() { 
 var state = { 
  title: "title", 
  url: "#" 
 }; 
 window.history.pushState(state, "title", "#"); 
 } 
}

分析一下代码,这里其实就是 添加一个历史记录,有了历史记录,微信的小横条就会出来,Android的返回键就可以监听到。然后这里修改了返回事件,当点击返回时触发关闭当前页面。

我觉得这个代码应该是微信公众号开发里面比较常用的一种方式。在以前的话,也没什么问题,可以返回关闭页面,比较方便。但是升级之后,微信多出来底部的返回条,而页面高度是在之前取的值,那么页面的高度就是未加横条的高度,横条出现后自然会遮挡住页面内容。

解决方式也很简单,把这段代码 提前,提前到获取高度之前,这样的话先有了横条,再有高度,则高度刚刚好是中间部分,这样就不会有遮挡问题

到此这篇关于iOS新版微信底部返回横条问题的解决的文章就介绍到这了,更多相关iOS 微信底部返回横条 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • iOS阅读器与直播的控件重叠滑动交互详解

    iOS阅读器与直播的控件重叠滑动交互详解

    这篇文章主要介绍了iOS阅读器与直播的控件发生重叠时滑动交互受到影响的问题,开发中某个控件出现在其它控件上方是和你常见的情况,但是如果影响到正常的交互这就会成为大问题,下面我们来了解一下
    2022-08-08
  • iOS实现简易钟表

    iOS实现简易钟表

    这篇文章主要为大家详细介绍了iOS实现简易钟表,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-02-02
  • IOS设置QQ小红点消除的方法(一键退朝)

    IOS设置QQ小红点消除的方法(一键退朝)

    这篇文章主要介绍了IOS设置QQ小红点消除的方法(一键退朝),对ios设置小红点消除相关知识感兴趣的朋友一起学习吧
    2016-01-01
  • iOS如何获取汉字(简体中文)笔画数详解

    iOS如何获取汉字(简体中文)笔画数详解

    这篇文章主要给大家介绍了关于iOS如何获取汉字(简体中文)笔画数的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-02-02
  • iOS如何去掉导航栏(UINavigationBar)下方的横线

    iOS如何去掉导航栏(UINavigationBar)下方的横线

    本篇文章主要介绍了iOS如何去掉导航栏(UINavigationBar)下方的横线,非常具有实用价值,需要的朋友可以参考下
    2017-05-05
  • 深入讲解iOS开发中应用数据的存储方式

    深入讲解iOS开发中应用数据的存储方式

    这篇文章主要介绍了iOS开发中应用数据的存储方式,包括plistXML属性列表和NSKeydeArchiver归档两个部分,需要的朋友可以参考下
    2015-12-12
  • iOS中 UIImage根据屏宽调整size的实例代码

    iOS中 UIImage根据屏宽调整size的实例代码

    最近做项目遇到这样一个需求,要求UIImage根据屏幕宽度按照自己本身比例改变高度,下面通过本文给大家分享iOS UIImage根据屏宽调整size的实例代码,需要的朋友参考下吧
    2017-01-01
  • iOS模仿QQ侧边栏的实现方法实例

    iOS模仿QQ侧边栏的实现方法实例

    项目中要做侧边栏效果,网上诸多demo,都不是最理想的。最后决定自己来实现一个,所以下面这篇文章主要给大家介绍了关于利用iOS模仿QQ侧边栏的实现方法,文中通过示例代码介绍的非常详细,需要的朋友可以参考下。
    2017-12-12
  • IOS  AFNetworking的Post失败及requestSerializer的正确使用

    IOS AFNetworking的Post失败及requestSerializer的正确使用

    这篇文章主要介绍了IOS AFNetworking的Post失败及requestSerializer的正确使用的相关资料,需要的朋友可以参考下
    2017-05-05
  • iOS 获得现在的时间代码

    iOS 获得现在的时间代码

    本文通过实例代码给大家介绍了iOS 获得现在的时间的方法,代码简单易懂,非常不错,具有参考借鉴价值,需要的的朋友参考下吧
    2017-06-06

最新评论