PhoneGap/Cordovaを使用してiOSおよびAndroidにインストールするWebアプリケーションがあります。アプリのある時点で、2番目のサーバーからコンテンツをロードするiframeがあります。
ブラウザからアプリを実行すると、すべてが期待どおりに機能します。iframeが同じページで開き、2番目のサイトからコンテンツが読み込まれます。
Cordovaを使用してiPhoneシミュレーターでwebappを実行すると、iframeが開くと、iOSがSafariに切り替わり、アプリをバックグラウンドで実行します。
実行した手順:
私の疑いは、それがconfig.xmlファイルを読み取ったり使用したりしていないことですが、他に何かがある可能性があります...誰かが私が間違っているかもしれない考えを持っていますか?
以前使用していたiframeの代わりにInAppBrowserを追加した後、最終的にiframeを再試行したところ、以前と同じように電話のブラウザーにジャンプしなくてもiframeが機能し、iOSとAndroidの両方で一貫してiframeが機能します。
iframeが壊れたときから機能し始めるときまでに、2つの点が変更されました。
最初に行っていたように、単にnhiding既存のiframeではなく、jqueryを使用してiframeを動的に作成/ページに追加し始めました。
$( '<iframe src = "whatever.com" height = "100%" width = "100%" frameborder = "0"> </ iframe>')。appendTo( 'body'); 。
Iframeの問題を修正したのが#1と#2のどちらであるかを気にしませんでした(私はそれが#1だと思います)、それを投稿するつもりだと思いましたIS取得可能他の誰かが同じ問題に遭遇した場合に備えて、PhoneGap/Cordovaアプリで動作するiframe。
InAppBrowserを使用しないのはなぜですか? http://docs.phonegap.com/en/2.3.0/cordova_inappbrowser_inappbrowser.md.html 。 AndroidとiOSの両方で機能するiframeを使用するのは注意が必要です
現在iOS 8で同じことが機能していません。スクロールせずに他のdivでオーバーフローするiFrameを取得します。さまざまなCSSスタイルを試しましたが、解決策はありませんでした。 Androidアプリで正常に動作します。これは最新のPhonegapビルドを使用しています。