iOS UIWebViewpopup窗口阻止程序问题

在iOS中,我打开网页时的默认行为是login后在新窗口中打开下一页。 但现在,当我在iOS WebView中打开它时,它不会打开下一页。 我谷歌关于它,原因似乎是popup式窗口拦截器。 那么,是否有任何简单的方法来禁用iOS webview中的popup窗口拦截器?

该网页可能有一个redirect,你没有正确处理。

您可能首先要使用webView:didFailNavigation:withError:webView:didFailProvisionalNavigation:withError:获取一些原因或线索。 您可以尝试debuggingwebView:decidePolicyForNavigationAction:decisionHandler:查看您是否允许导航。

如果redirect以某种方式在转换中生成about:blank页面,则可以尝试使用UIWebViewDelegatewebView:shouldStartLoadWithRequest:navigationType:并返回YES如果request.URL.absoluteString确实是about:blank ,例如:

 - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType { if ([request.URL.absoluteString isEqualToString:@"about:blank"]) { return YES; } return NO; } 

顺便说一句,你也可以尝试使用Safari来在你的模拟器中debuggingwebView 。 例如,在您的检查器中尝试document.location ,以查看页面未打开时的实际URL。