wkWebView关闭窗口 - autoclose

时间:2016-08-01 17:40:45

标签: ios objective-c wkwebview

当我点击wkWebView中的弹出窗口时,我通过

进行操作
- (nullable WKWebView *)webView:(WKWebView *)webView createWebViewWithConfiguration:(WKWebViewConfiguration *)configuration forNavigationAction:(WKNavigationAction *)navigationAction windowFeatures:(WKWindowFeatures *)windowFeatures{
if (!navigationAction.targetFrame.isMainFrame) {

    //[webView loadRequest:navigationAction.request];
    [self showInternalWeb:navigationAction.request.URL.absoluteString];
    }

    return nil;
}

并在不同的控制器中显示链接。

我想在窗口关闭时自动关闭该控制器。在我的笔记本电脑浏览器中,按下新窗口上的按钮后,控制器将自动关闭。我想知道如何自己编写这个功能。

我试过打电话:

[userContentController addScriptMessageHandler:self name:@"window.close()"];
[self.webView evaluateJavaScript:@"window.close()" completionHandler:^(id _Nullable obj, NSError * _Nullable error) {
    NSLog(@"suces");
}];

这通常会调用webViewDidClose,但不会在窗口变为空白时调用。

1 个答案:

答案 0 :(得分:0)

请检查一下,您是否为webView设置了UIDelegate ..

webView.UIDelegate = self;