我在iOS 8中获取WKWebView以显示从Javascript调用的警报对话框时遇到一些麻烦.在创建标准WKWebView并加载HTML文件后,我在页面上有一个按钮,用于创建带有一些文本的简单警报.这适用于UIWebView和Google Chrome/Safari,但似乎无法在WKWebView中使用.任何帮助表示赞赏.
我的设置如下:
WKWebViewConfiguration *config = [[WKWebViewConfiguration alloc] init];
config.allowsInlineMediaPlayback = YES;
config.mediaPlaybackRequiresUserAction = false;
_wkViewWeb = [[WKWebView alloc] initWithFrame:_viewWeb.frame config];
_wkViewWeb.scrollView.scrollEnabled = NO;
NSString *fullURL = @"file://.../TestSlide.html";
NSURL *url = [NSURL URLWithString:fullURL];
NSURLRequest *request = [NSURLRequest requestWithURL:url cachePolicy:NSURLRequestReloadIgnoringCacheData timeoutInterval:10];
[_wkViewWeb loadRequest:request];
Run Code Online (Sandbox Code Playgroud)
html具有以下功能:
<SCRIPT Language="JavaScript">
function alertTest() {
alert("Testing Alerts");
}
</SCRIPT>
Run Code Online (Sandbox Code Playgroud)
还有一个按钮:
<b>Test Alerts: <input type="button" value="Alert Popup" onclick="alertTest()"><br></b> <br>
Run Code Online (Sandbox Code Playgroud)
此设置适用于UIWebView和常规浏览器,但在WKWebView中不起作用.我在配置中遗漏了什么吗?我是否应该使用其中一个WK代表来控制警报/确认对话框行为?谢谢.