在我的Android phonegap / Cordova 3.5项目中,我有3个html页面( index.html 中的按钮调用 page2.html ,其中有另一个按钮调用 page3.html )。
在 page2.html 中,我在 deviceReady 中重写后退按钮:
document.addEventListener("backbutton", onBackKeyDown, false);
然后
function onBackKeyDown() {
console.log("onBackKeyDown");
navigator.app.exitApp();
}
但是在 page3.html 我想让Android控制后退按钮,所以我不会在page3.html中覆盖它。 相反,在page3.html中禁用了后退按钮。
问题:
答案 0 :(得分:1)
您可以在OnBackKeyDown事件中检查页面:
function onBackKeyDown() {
var pagename = // get the page name here
if ( pagename == page3.html ) {
history.back();
}
else {
navigator.app.exitApp();
}
}
答案 1 :(得分:0)
您可以根据每个页面返回按钮行为。示例如下所示。
function onBackKeyDown(e) {
if ($.mobile.activePage[0].id == "home"
|| $.mobile.activePage[0].id == "login") {
e.preventDefault();
navigator.app.exitApp();
}else if($.mobile.activePage[0].id == "inspection"){
e.preventDefault();
back();
//return false;
}else if($.mobile.activePage[0].id == "noDetails"){
e.preventDefault();
$.mobile.changePage("home.html");
return false;
}else{
navigator.app.backHistory();
}
}
我正在使用jQuery Mobile-更好地控制页面转换。
答案 2 :(得分:0)