0

遵循这个很好的答案

我正在使用科尔多瓦 2.0

我需要在 Safari 窗口中打开一些特定的链接。但同时我需要在同一个 WebView 中加载外部广告。所以我正在使用这个conf:

OpenAllWhitelistURLsInWebView = YES
ExternalHosts = ['*']

设置我对ads/GA/et没有任何问题。但是,对于我尝试使用 target=_blank 的链接,正如许多帖子所说,但设置ExternalHosts = ['*']似乎破坏了target=_blank功能。

例子

<a href='external.com' target=_blank> open in Safari</a>
<a href='internal.com' > open in WebView</a>

问题:

ExternalHosts = ['*']可以使用和OpenAllWhitelistURLsInWebView = YES ??强制将链接目标打开到 safari 窗口中。

4

2 回答 2

0

这看起来可能会奏效。我正在运行 2.1 并遇到同样的问题。

我仍在寻找更有效的解决方案。 http://www.rigelgroupllc.com/blog/2012/05/22/opening-links-in-phonegap-apps-in-mobile-safari/

于 2012-11-03T23:13:42.813 回答
0

只需捕获 javascript 中所有具有 的链接target="_blank",然后使用 '_system' 参数将它们传递给 window.open。这将适用于 iOS 和 Android。

$(document).on('click', 'a[target="_blank"]', function(ev) {
  var url;

  ev.preventDefault();
  url = $(this).attr('href');
  window.open(url, '_system');
});
于 2013-05-05T22:58:38.327 回答