我有一个webapp,我正在使用PhoneGap / Cordova在iOS和Android上安装。在应用程序的某一点上,我有一个从第二台服务器加载内容的iframe。
当我从浏览器运行应用程序时,一切都按预期工作 - iframe在同一页面中打开并从第二个站点加载内容。
当我使用Cordova在iPhone模拟器上运行webapp时,当iframe打开时,iOS会切换到Safari并将我的应用程序置于后台。
采取的步骤:
我怀疑它不是在阅读/使用config.xml文件,但可能还有其他东西......有没有人有任何想法我可能做错了什么?
答案 0 :(得分:19)
在添加InAppBrowser代替我之前使用的iframe之后,我最终再次尝试了iframe,iframe现在可以正常工作,而不会跳转到手机的浏览器,就像以前一样,并且iframe在两者中都是一致的iOS和Android。
从iframe破解到开始工作时,有两件事发生了变化:
我开始使用jquery动态创建/添加iframe到页面,而不仅仅是取消隐藏已经存在的iframe,就像我最初做的那样:
$('< iframe src =“whatever.com”height =“100%”width =“100%”frameborder =“0”>< / iframe>')。appendTo('body');
我没有费心去检查修复iframe问题是#1还是#2(我猜它是#1),但我想我会发帖说可以让iframe使用PhoneGap / Cordova应用程序,以防其他人遇到同样的问题。
答案 1 :(得分:5)
为什么不使用InAppBrowser? http://docs.phonegap.com/en/2.3.0/cordova_inappbrowser_inappbrowser.md.html。使用既适用于Android又适用于iOS
的iframe将会非常棘手答案 2 :(得分:0)
现在iOS 8的相同功能无效。我得到的iFrame没有滚动和溢出其他div。试过各种CSS样式,但没有解决方案。适用于Android应用程序。 这是使用最新的Phonegap版本。