微信开发小记之一:微信内置浏览器IOS和Android的区别 您所在的位置:网站首页 微信内置秒抢秋硩 微信开发小记之一:微信内置浏览器IOS和Android的区别

微信开发小记之一:微信内置浏览器IOS和Android的区别

#微信开发小记之一:微信内置浏览器IOS和Android的区别 | 来源: 网络整理| 查看: 265

在Android上,微信6.1版本以上的android用户,都是使用的QQ浏览器的X5内核。5.4-6.1之间的版本,若用户安装了QQ浏览器就是使用的X5内核,若用户未安装浏览器,使用的是系统内核。而在IOS(IPhone)上,有两种:WKWebview和UIWebview,从IOS8开始支持WKWebview。

内核的不同造成了不少问题:

微信IOS端返回页面不刷新

使用history的replaceState属性替换当前网页链接(其实作用是在不增加history长度的基础上,仍然使用当前网面链接不能使用popState,因为它的作用是增加了history的长度,后退时会出错,往往跳不出循环)。完整代码如下:1234567891011121314$(function() { pushHistory(); }); function pushHistory() { window.addEventListener("popstate", function(e) {// alert("后退"); self.location.reload(); }, false); var state = { title : "", url : "#" }; window.history.replaceState(state, "", "#"); };

popState事件只有在作用go(-1),back(),forward()等操作时才会触发。 重点是self.location.reload();,后退后刷新当前页面。其它人写的文章里缺少这一块,弄的我很是郁闷。 微信里在监听到iphone后退事件后会触发popState事件,在PopState事件里执行:self.location.reload();即可刷新后退后的页面。

参考资料iphone上的微信内置浏览器和Android上的微信内置浏览器的内核不一样吗??如何让微信IOS端,返回页面可刷新

微信里iphone后退不刷新问题解决方案,真实有效



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有