jquery mobile と cordova を使用して RSS リーダーをプログラムしようとしています。私の RSS リーダーは 3 つのページで構成されています (同じ HTML ドキュメント内: page1、page2、page3)。プログラムを終了するように (ハードウェア) 戻るボタンの動作をオーバーライドしようとしています。プロジェクトのセットアップで間違いを犯していないことを確認するために、PhoneGap サンプル プロジェクトを使用して Eclipse にロードしました。すべてのサンプル関数が機能したので、index.html と res フォルダーを phonegap の例に移動しました。私の index.html では、次のスクリプトをインポートします。
<script src="res/jquery-1.7.1.min.js"></script>
<script src="res/jquery.mobile-1.1.1.min.js"></script>
<script type="text/javascript" charset="utf-8" src="cordova-2.0.0.js"></script>
<script type="text/javascript" charset="utf-8" src="main.js"></script>
私のmain.jsファイルは次のようになります。
document.addEventListener("backbutton", function(e){
if($.mobile.activePage.is('#homepage')){
e.preventDefault();
navigator.app.exitApp();
}
else {
navigator.app.backHistory()
}
}, false);
私のスクリプトのバージョンは、最初のコード サンプルで確認できます。Xperia Arcの戻るボタンを押したときにアプリを終了するようにコードを機能させる方法についてのアイデアはありますか? 必要に応じて、完全なコードをアップロードできます。
編集: Android フォンで phonegap(cordova) ビープ機能をテストしましたが、動作するため、スクリプトの実装に問題はありません。main.js ファイルにあるものでなければなりません。おそらく、jquerymobile の backbutton 関数と phonegap の backbutton 関数との互換性の問題です。