0

インデックス ページとそのインデックス ページに多くのボタンがあります。これらのボタンページをクリックすると、他のページに移動します。私はこのコードを持っていますindex.htlm

<script type="text/javascript" charset="utf-8" src="jquery-mobile/cordova-1.8.1.js"></script>

function onLoad() {
    document.addEventListener("deviceready", onDeviceReady, false);
}
function onDeviceReady() {
    document.addEventListener("backbutton", onBackKeyDown, false);
}
function onBackKeyDown() {
    alert("Are you sure !!")
}

<body onLoad="onLoad()"> </body>

したがって、インデックス ページの [戻る] ボタンにいるときは、そのアラートのみを表示する必要があります。アラートは正しく表示されていますが、他のページからの戻るボタンも無効になっています。

4

4 に答える 4

1
  1. 最新の cordova-2.0.0.js をダウンロード
  2. ルート ディレクトリ (index.html の隣) に配置します。
  3. <head>セクションにロードする
<head>
     <script type="text/javascript" charset="utf-8" src="cordova-2.0.0.js">
     <!-- Other JS files .... -->
</head>
于 2012-09-14T07:22:55.687 に答える
1

スクリプトをページ div 内に配置してみてください。これが役立つ場合があります。

于 2012-09-12T08:53:10.990 に答える
1

関数でページをチェックしていないため、すべてのページに等しく反応します。これを試して:

function onBackKeyDown() {
    if($.mobile.activePage.is('#homepage')){
       e.preventDefault();
       alert("Are you sure !!");
   }
   else {
       navigator.app.backHistory()
   }
}
于 2012-09-12T09:37:42.233 に答える
0

アラートの後に追加してみてください:

document.removeEventListener("backbutton", onBackKeyDown, false);
于 2012-12-18T11:58:51.143 に答える