我怎样才能在IOS上运行的PhoneGap /科尔多瓦应用中打开一个iframe?(How can

2019-07-20 23:52发布

我有我使用的是的PhoneGap /科尔多瓦在iOS和Android安装一个Web应用程序。 在应用中的一个点上我有一个加载从第二服务器内容的iframe中。

当我从浏览器中运行应用程序,一切都按预期 - 的iframe在同一页中打开并加载从第二站点的内容。

当我使用科尔多瓦,一个iPhone模拟器上运行web应用程序的iframe打开时,iOS设备切换到Safari浏览器,并把我的应用程序在后台运行。

采取的步骤:

  1. 我添加了第二个站点在Cordova.plist文件中的“ExternalHosts”阵列。
  2. 我创建旁边的/ www目录index.html文件一个config.xml文件,根据所述的PhoneGap /科尔多瓦文档( https://build.phonegap.com/docs/config-xml )。
  3. 我添加了一个<首选项名称=“留功能于网页视图”值=“真” />标记到config.xml文件作为主<插件>标记的子元素。

我怀疑的是,它是不读/使用config.xml文件,但也有可能是别的东西......没有人有任何想法我可能是做错了?

Answer 1:

在地方,我用之前的iframe添加InAppBrowser后,我终于再次尝试的iframe和iframe的现在工作不跳转到手机的浏览器,因为它是做之前,和iframe的工作始终在iOS和Android的。

两件事从时间改变了I帧被打破时,他们开始工作:

  1. 我升级到2.5科尔多瓦
  2. 我开始动态创建/使用jQuery添加iframe的页面,而不是仅仅取消隐藏一个已经存在的iframe,因为我在做最初:

    $( '<IFRAME SRC = “whatever.com” HEIGHT = “100%” 宽度= “100%” FRAMEBORDER = “0”> </ IFRAME>')appendTo( '主体')。 。

我没有理会检查它是否是#1#2固定的iframe问题(我猜这是#1),但我想我会后,有可能获得I帧用的PhoneGap /科尔多瓦应用工作,万一别人运行到同样的问题。



Answer 2:

你为什么不使用InAppBrowser? http://docs.phonegap.com/en/2.3.0/cordova_inappbrowser_inappbrowser.md.html 。 这将是棘手的使用iframe的这无论是在安卓和iOS中工作



Answer 3:

与iOS 8,现在同样的事情是行不通的。 我得到的iFrame没有滚动和溢出其他申报单。 尝试了各种CSS样式,但没有解决方案。 适用于Android应用的罚款。 这是采用最新的PhoneGap构建。



文章来源: How can I open an iframe in a phonegap/cordova app running on IOS?