菜鸟教程小白 发表于 2022-12-12 22:29:02

ios - Phonegap 2.0 , Cordova 外部链接


                                            <p><p>我有一种情况,我在谷歌上花了这么多时间却没有成功。</p>

<p>我想在我的应用程序(IOS)中打开,像这样的外部链接</p>

<p><code>"<a href="http://google.com"target="_blank">External Link</a>"</code> 在 safari 而非网页 View 中打开。我在“Cordova.plist”中设置的地方</p>

<p><code>OpenAllWhitelistURLsInWebView : true</code></p>

<p>因为我的应用中还有一些 iframe,我想让用户保持在 WebView 中而不是离开应用。</p>

<p>我不知道为什么 target="_blank"不起作用,在这里:</p>

<p> <a href="https://build.phonegap.com/blog/access-tags" rel="noreferrer noopener nofollow">https://build.phonegap.com/blog/access-tags</a>它说:</p>

<p>"
<strong>在 iOS 上,如果域被列入白名单,则链接将接管整个 webview,除非链接的目标是 _blank,在这种情况下它将在浏览器中打开。如果不是,它将在设备上记录一个错误,而从用户的角度来看什么也不做。</strong>
"</p>

<p>我也试过用JS的方式,</p>

<pre><code>window.open(&#39;http://www.google.com&#39;, &#39;_blank&#39;);
</code></pre>

<p>没有成功:( </p>

<p>PS:<em>我的所有链接都设置在外部主机中</em></p>

<p>感谢您的帮助。</p>

<p>谢谢!</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>您需要的是 MainViewController.m 中的这个迷人者</p>

<pre><code>- (BOOL)webView:(UIWebView *)theWebView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
NSURL *url = ;

// Intercept the external http requests and forward to Safari.app
// Otherwise forward to the PhoneGap WebView
if ([ isEqualToString:@&#34;http&#34;] || [ isEqualToString:@&#34;https&#34;]) {
    [ openURL:url];
    return NO;
}
else {
    return [ super webView:theWebView shouldStartLoadWithRequest:request navigationType:navigationType ];
}
}
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于ios - Phonegap 2.0 , Cordova 外部链接,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/11993067/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/11993067/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - Phonegap 2.0 , Cordova 外部链接