有没有办法处理后退按钮(设备后退按钮)作为移动页面的默认功能?我需要在后退按钮上实现相同的功能转到上一页。如果没有上一页(第一页),则退出该应用程序。这可能在PhoneGap中吗?
我还需要在推送另一个页面之前弹出页面是否可以在jQuery中使用?
答案 0 :(得分:1)
检查window.location.length将是确定您是否在第一页上的最简单方法,但这在Phonegap中不可用。
但是既然您正在使用JQM,您可以使用导航事件,如Omar建议的那样,或者可以手动计算显示的页数和返回的页数(同样的事情)并使用它来确定是否第一页正在显示以及是否退出应用程序。像这样的东西会起作用:
var pageHistoryCount = 0;
var goingBack = false;
$(document).bind("pageshow", function(e, data) {
if (goingBack) {
goingBack = false;
} else {
pageHistoryCount++;
console.log("Showing page #"+pageHistoryCount);
}
});
function exitApp() {
console.log("Exiting app");
navigator.app.exitApp();
}
function onPressBack(e) {
e.preventDefault();
if(pageHistoryCount > 0) pageHistoryCount--;
if (pageHistoryCount == 0) {
navigator.notification.confirm("Are you sure you want to quit?", function(result){
if(result == 2){
exitApp();
}else{
pageHistoryCount++;
}
}, 'Quit My App', 'Cancel,Ok');
} else {
goingBack = true;
console.log("Going back to page #"+pageHistoryCount);
window.history.back();
}
}
function deviceready() {
$(document).bind('backbutton', onPressBack);
}
$(document).bind('deviceready', deviceready);
至于问题的第二部分:
其次我需要在推送另一页之前弹出页面是这样的 在jquery中可以发现吗?
目前尚不清楚你在这里问的是什么。你的意思是你想要显示某种弹出内容,比如每个页面之间的对话更改?请澄清然后我可以帮助你: - )