Phonegap iPhone目标链接问题

Posted

技术标签:

【中文标题】Phonegap iPhone目标链接问题【英文标题】:Phonegap iPhone target link issue 【发布时间】:2012-08-29 20:16:18 【问题描述】:

关注这个伟大的answer

我正在使用 cordova 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 窗口中??

【问题讨论】:

【参考方案1】:

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

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

【讨论】:

【参考方案2】:

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

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

  ev.preventDefault();
  url = $(this).attr('href');
  window.open(url, '_system');
);

【讨论】:

以上是关于Phonegap iPhone目标链接问题的主要内容,如果未能解决你的问题,请参考以下文章

如何在 iPhone 中使用 PhoneGap 调用基于 SOAP 的 Web 服务?

将 Web 应用程序嵌入到 PhoneGap(针对 iPhone)的选项?

错误地链接 Javascript 文件?

在初始化 PhoneGap 之前显示 ViewController

隐藏iPhone键盘上方的工具栏,PhoneGap

Phonegap LocalStorage - 是不是需要文件系统权限