我有UIWebView
,我加载google.com
:
[self.webView setFrameLoadDelegate:self];
NSURLRequest*request=[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.google.com/"]];
[[self.webView mainFrame] loadRequest:request];
在完成方法中,我将此方法称为在webview上显示警报,但它无法正常工作。任何想法可能是什么问题?
- (void)webView:(WebView *)sender didFinishLoadForFrame:(WebFrame *)frame {
[self.webView stringByEvaluatingJavaScriptFromString:@"alert('Hello')"];
}
答案 0 :(得分:2)
如果您在OSX中使用WebKit / WebView,则此类永远不会显示JavaScript的警报。 相反,它调用WebUIDelegate的方法
func
webView(
_ sender: WebView!
, runJavaScriptAlertPanelWithMessage message: String!
, initiatedBy frame: WebFrame!
) {
}
如果您设置了webView的uiDelegate属性。
self.webView.uiDelegate = self
您可以使用此回调中提供的消息显示您自己的面板。