IOS10的微信内核更新以后---返回事件

        在ios10.2系统之下,微信内核升级为WKwebview内核之后,进行了一系列改变,其中一部分便是返回按钮事件,取消了返回之后的刷新功能。

       而在实际的应用中,我们常常需要实现在移动app和浏览器中点击返回、后退、上一页等按钮实现自己的关闭页面、调整到指定页面或执行一些其它操作的需求,那在代码中怎样监听当点击微信、支付宝、百度糯米、百度钱包等app的返回按钮或者浏览器的上一页或后退按钮的事件呢?

        首先我们需要知道如何来监听这个返回事件:

返回、后退、上一页按钮点击监听实现代码:

window.addEventListener("popstate",function(e) {

       alert("我监听到了浏览器的返回按钮事件啦");//根据自己的需求实现自己的功能

},false);


       然后我们要了解H5的history,,它的API如下:

1. history.pushState与history.replaceState。

A)history.length:当前历史列表中的历史记录数(我大概测了下,IE6+是从0开始的,其他的是从1开始的,若有误请反馈哈,(^_^);

B)history.Go(n):前进或后退n条记录,当n=0或空时会刷新当前页;

C)history.back():后退一步;

D)history.forward():前进一步;

2.HTML5新增的API

A)history.pushState(data, title [, url]):往历史记录堆栈顶部添加一条记录; data会在onpopstate事件触发时作为

参数传递过去;title为页面标题,当前所有浏览器都会 忽略此参数;url为页面地址,可选,缺省为当前页地址;

B)history.replaceState(data, title [, url]) :更改当前的历史记录,参数同上;

C)history.state:用于存储以上方法的data数据,不同浏览器的读写权限不一样;

D)window.onpopstate:响应pushState或replaceState的调用;有了这几个新的API,针对支持的浏览器,

你可能感兴趣的:(IOS10的微信内核更新以后---返回事件)