5+app处理返回键问题,后退按钮返回上一页
直接上代码,官网的例子是这样的:// H5 plus事件处理function plusReady(){// Android处理返回键plus.key.addEventListener('backbutton',function(){('iOS'==plus.os.name)?plus.nativeUI.confirm('确认退出?', function(e){if(e...
·
直接上代码,官网的例子是这样的:
// H5 plus事件处理
function plusReady(){
// Android处理返回键
plus.key.addEventListener('backbutton',function(){
('iOS'==plus.os.name)?plus.nativeUI.confirm('确认退出?', function(e){
if(e.index>0){
plus.runtime.quit();
}
}, 'HelloH5', ['取消','确定']):(confirm('确认退出?')&&plus.runtime.quit());
},false);
// 关闭启动界面
plus.navigator.setStatusBarBackground('#D74B28');
setTimeout(function(){
plus.navigator.closeSplashscreen();
},200);
}
但用后,安卓端的返回键直接退出应用了。
改进方法:
// H5 plus事件处理
function plusReady(){
// Android处理返回键
var webview = plus.webview.currentWebview();
plus.key.addEventListener('backbutton',function(){
webview.canBack(function(e) {
if(e.canBack) {
webview.back();
} else {
//webview.close(); //hide,quit
('iOS'==plus.os.name)?plus.nativeUI.confirm('确认退出?', function(e){
if(e.index>0){
plus.runtime.quit();
}
}, 'HelloH5', ['取消','确认']):(confirm('确认退出?')&&plus.runtime.quit());
}
})
},false);
// 关闭启动界面
plus.navigator.setStatusBarBackground('#D74B28');
setTimeout(function(){
plus.navigator.closeSplashscreen();
},200);
}
更多推荐
已为社区贡献1条内容
所有评论(0)