使用PhoneGap控制后退按钮

时间:2012-09-12 08:19:30

标签: cordova

我在索引页面上有一个索引页面和许多按钮。单击这些按钮页面将转到其他一些页面。我在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 个答案:

答案 0 :(得分:1)

尝试将您的脚本放在页面div中。这可能会有所帮助。

答案 1 :(得分:1)

您没有检查功能中的页面,因此它对每个页面都做出同样的反应。试试这个:

function onBackKeyDown() {
    if($.mobile.activePage.is('#homepage')){
       e.preventDefault();
       alert("Are you sure !!");
   }
   else {
       navigator.app.backHistory()
   }
}

答案 2 :(得分:1)

  1. 下载最新的cordova-2.0.0.js
  2. 将其放在根目录(index.html旁边)
  3. 将其加载到<head>部分
  4. <head>
         <script type="text/javascript" charset="utf-8" src="cordova-2.0.0.js">
         <!-- Other JS files .... -->
    </head>
    

答案 3 :(得分:0)

请在提醒后尝试添加:

document.removeEventListener("backbutton", onBackKeyDown, false);