Phonegap の別のページにリダイレクトしたい。
次のコードを JavaScript で記述しましたが、リダイレクトされません。
window.location.href = "http://www.google.com";
なぜそれが機能しないのか誰にもアドバイスできますか?
ホワイトリストを構成して、アプリケーション内の外部サイトのナビゲーションを許可する必要があります。
allow-navigation
次のようなタグを使用する必要があります。
<allow-navigation href="http://www.google.com/*" />
なしで試してくださいhref
:
window.location = "http://www.google.com";
Cordova 4 で問題なく動作しています。Google Chrome でリモート デバッグを試して、Javascript コンソールで何が起こるかを確認できますか?
次のことを試してください。
ファイルCordova.plist
ファイルを開く
を右クリックExternalHosts
- >Add Row
String
新しく追加された行の値を に設定します*
。
したがって、次のように新しく追加された行が必要です。
Item0 String *
通常、*
アクセスを提供したい外部 URL (http://www.google.com
たとえば) に置き換える必要がありますが、以前*
は、問題がそこから来ているかどうかを確認していました。
詳細については、オンライン ドキュメントhttp://docs.phonegap.com/en/2.1.0/guide_whitelist_index.md.html#Domain%20Whitelist%20Guideの「ドメイン ホワイトリスト ガイド」セクションを確認してください。
を使用した簡単な作業例を次に示しwindow.location.href
ます。
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" charset="utf-8">
function init() {
window.location.href = "http://www.google.com";
}
</script>
</head>
<body onload="init();">
</body>
</html>
これがうまくいくかどうか教えてください。
ほとんどの場合、移動先のページです。そのページには phongap.js ファイルなどがありますか?
簡単なテストを試してみてください。基本的な要素と本文にいくつかの単語だけを含む新しい HTML ページを作成して、そこにいることがわかるようにします。test.html として保存します。それでは、window.location="test.html" を試してください。
それが機能する場合は、それが新しいページにあることがわかります。幸運を!
フレームワークの初期化を確認しましたか? ページを変更する前に、jquery と phonegap が完全に読み込まれていることを確認してください。そうしないと、phonegap がハングして壊れます。
こちらをご覧ください: JQuery-Mobile/Phonegap を一緒に使用する正しい方法は?