关于物理回退键的理解:http://docs.wex5.com/wex5-app-question-list-2003/
修改代码:/UI2/system/components/justep/common/utils.js 参考双击两次退出APP的的思路! 页面路由回退的时候,也定义一个变量,指定一个时间差,超过一段时间后才能回退!主要修改代码如下:
思路:定义一个变量:closePage 默认是0,1秒后赋值为1,只有变量为1的情况下才能关闭页面
点击下载文件
document.addEventListener("deviceready", function() {
var exitAppTicker = 0;
//默认可以关闭页面的
var closePage = 1;
var listener = function(){
if(conditionFn()){
if(exitAppTicker === 0){
exitAppTicker++;
var msg = $('
<div style="display: none;z-index:99999;position: fixed;width: 100%;bottom: 25px;text-align: center;"><span style="font-size:18px;border-radius: 3px;padding: 7px;background-color: #383838;color: #F0F0F0;">再按一次退出应用</span></div>
').appendTo('body');
msg.fadeIn(400).delay(2000).fadeOut(400,function(){
exitAppTicker = 0;
msg.remove();
});
}else if(exitAppTicker == 1){
exitDtd.resolve();
navigator.app.exitApp();
}
}else{
if($('html').hasClass("x-focus-in")){
$('html').removeClass("x-focus-in");
}else{
alert(closePage);
if(closePage === 1){
history.back();
closePage = 0;
//1秒后才能关闭页面!
setTimeout(function(){closePage = 1},1000);
//justep.Shell.closePage();
}
}
}
};
document.addEventListener('backbutton', listener, false);
$(window).on('beforeunload', function(){
document.removeEventListener('backbutton', listener, false);
});
}, false);
评一波