有时候,在h5页面进行跳转的时候,须要退出到某个加载历史的web页面,此时则须要使用WKWebView里面新增的API。web
/** * 在发送请求以前,决定是否跳转 * * @param webView 实现该代理的webview * @param navigationAction 当前navigation * @param decisionHandler 是否调转block */ - (void)webView:(WKWebView *)webView decidePolicyForNavigationAction:(WKNavigationAction *)navigationAction decisionHandler:(void (^)(WKNavigationActionPolicy))decisionHandler { if (navigationAction.navigationType==WKNavigationTypeBackForward) { //判断是返回类型 if (webView.backForwardList.backList.count>0) { //获得栈里面的list WKBackForwardListItem * item = webView.backForwardList.currentItem; //获得如今加载的list for (WKBackForwardListItem * backItem inwebView.backForwardList.backList) { //循环遍历,获得你想退出到 //添加判断条件 [webView goToBackForwardListItem:[webView.backForwardList.backListfirstObject]]; } } } //容许跳转 decisionHandler(WKNavigationActionPolicyAllow); }