上周我一直在尝试弄清楚如何检测 Javascript 何时加载到网页上,然后从 UIWebView 跳出到 Safari。
我目前正在使用此代码:
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType {
if (navigationType == UIWebViewNavigationTypeOther) {
[[UIApplication sharedApplication] openURL:request.URL];
return NO;
}
return YES;
}
(通常这条线if (navigationType == UIWebViewNavigationTypeLinkClicked) {
有效,但不适用于 YouTube 等 Javascript 页面,所以我if (navigationType == UIWebViewNavigationTypeOther) {
改用它。
这可行,但不幸的是在第一次加载页面时跳转到 Safari。我只想在 Safari 中加载后续页面。
有没有办法检测页面第一次加载,然后阻止它在 Safari 中打开,但允许后续请求在 Safari 中打开?非常感谢!