在我的Phonegap应用中,使用html
作为网页在单个div
文件中创建,只有当div
充当主页时,我才会覆盖后退按钮以退出应用页面是可见的,否则隐藏其他页面并显示主页div
。我使用jQuery来附加事件处理程序。
在首次启动应用时效果很好,但如果应用位于“历史记录”列表中,则覆盖功能无效,“返回”按钮将退出应用,而不会检查哪个div
可见。从“历史记录”列表中删除应用程序后,它将再次按预期工作。
使用Android 4.2在Nexus 4上进行测试。 这是代码:
$(document).on('backbutton', function (ev) {
ev.preventDefault();
if (!$('#divHomeScreen').is(':visible')) {
$('.screen').hide();
$('#divHomeScreen').show();
return false;
} else {
navigator.app.exitApp();
}
});
感谢您的帮助。
答案 0 :(得分:1)
我所做的是根据需要动态添加和删除后退按钮处理程序。例如......
function showScreen()
{
$("#divHomeScreen").hide();
$(".screen").show();
$(document).on("backbutton", onBackButton);
}
function hideScreen()
{
$(".screen").hide();
$("#divHomeScreen").show();
$(document).off("backbutton", onBackButton);
}
function onBackButton()
{
hideScreen();
}
这是在Galaxy S3 Android 4.3和PhoneGap 3.3.0
上测试的