iOS开发

WKWebView常用代码

2020-07-07  本文已影响0人  hypercode
@property (strong, nonatomic) WKWebView *mainWebView;

- (WKWebView *)mainWebView{
    if(!_mainWebView){
        _mainWebView = [[WKWebView alloc] initWithFrame:CGRectZero];
        [self.view addSubview:_mainWebView];
        [_mainWebView mas_makeConstraints:^(MASConstraintMaker *make) {
            make.left.and.right.and.bottom.and.top.offset(0);
            
        }];
        _mainWebView.navigationDelegate = self;
    }
    return _mainWebView;
}
//处理 js
NSString *bodyStr = @"document.body.innerText";
        [self.mainWebView evaluateJavaScript:bodyStr completionHandler:^(id _Nullable result, NSError * _Nullable error) {
            if (result&&[result isKindOfClass:[NSString class]]) {
                [self doWithResult:result];
            }
        }];
// 是否允许跳转
- (void)webView:(WKWebView *)webView decidePolicyForNavigationAction:(WKNavigationAction *)navigationAction decisionHandler:(void (^)(WKNavigationActionPolicy))decisionHandler{
    NSLog(@"%s", __func__);
    decisionHandler(WKNavigationActionPolicyAllow);
}

// 开始加载网页
- (void)webView:(WKWebView *)webView didStartProvisionalNavigation:(WKNavigation *)navigation {
    NSLog(@"%s", __func__);
}

// 加载失败
- (void)webView:(WKWebView *)webView didFailProvisionalNavigation:(WKNavigation *)navigation


// 加载结束网页
- (void)webView:(WKWebView *)webView didFinishNavigation:(WKNavigation *)navigation 
上一篇 下一篇

猜你喜欢

热点阅读