0

上周我一直在尝试弄清楚如何检测 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;
}

在网址http://m.youtube.com/

(通常这条线if (navigationType == UIWebViewNavigationTypeLinkClicked) {有效,但不适用于 YouTube 等 Javascript 页面,所以我if (navigationType == UIWebViewNavigationTypeOther) {改用它。

这可行,但不幸的是在第一次加载页面时跳转到 Safari。我只想在 Safari 中加载后续页面。

有没有办法检测页面第一次加载,然后阻止它在 Safari 中打开,但允许后续请求在 Safari 中打开?非常感谢!

4

1 回答 1

1

您可以使用以下代码,如果您有任何疑问,请告诉我...

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:[urlArr objectAtIndex:indexPath.row]]]; 
于 2013-01-24T11:27:14.173 回答