cordova 后退按钮触发事件侦听器但应用程序仍然关闭
cordova back button fires event listener but app closes anyway
我有以下代码,如果用户在他的设备上按下后退按钮,我想在他能够退出应用程序之前向他显示一个弹出窗口。但是,这对我不起作用。显示警告框,但应用程序也关闭。
document.addEventListener("deviceready", function() {
document.addEventListener("backbutton", function(e) {
e.preventDefault();
$scope.alertDialog.show();
}, false);
}, false);
科尔多瓦version:6.4.0
在有人提出之前 - cordova.js 包含在索引 html 页面中。
UI 是使用 onsenUI 和 angularJS v1.
建造的
您可以按照以下方式进行操作:
document.addEventListener("deviceready", function() {
var backbutton=0;
document.addEventListener("backbutton", function(e) {
if(backbutton==0){
backbutton++;
$scope.alertDialog.show();
// window.plugins.toast.showShortCenter('Press again to exit');
$timeout(function(){backbutton=0;},5000);
}else{
navigator.app.exitApp();
}
}, false);
}, false);
希望对您有所帮助。
想通了。 How to control android backbutton routes?
最后 0 票的答案是正确的。
You can controll it with "disableDeviceBackButtonHandler" after
ons.ready event. After that add a event listener for back button and
do anything you want.
ons.ready(function() {
ons.disableDeviceBackButtonHandler();
// Use Cordova handler
window.document.addEventListener('backbutton', function() {
// Handle backbutton event
}, false);
});
我有以下代码,如果用户在他的设备上按下后退按钮,我想在他能够退出应用程序之前向他显示一个弹出窗口。但是,这对我不起作用。显示警告框,但应用程序也关闭。
document.addEventListener("deviceready", function() {
document.addEventListener("backbutton", function(e) {
e.preventDefault();
$scope.alertDialog.show();
}, false);
}, false);
科尔多瓦version:6.4.0 在有人提出之前 - cordova.js 包含在索引 html 页面中。 UI 是使用 onsenUI 和 angularJS v1.
建造的您可以按照以下方式进行操作:
document.addEventListener("deviceready", function() {
var backbutton=0;
document.addEventListener("backbutton", function(e) {
if(backbutton==0){
backbutton++;
$scope.alertDialog.show();
// window.plugins.toast.showShortCenter('Press again to exit');
$timeout(function(){backbutton=0;},5000);
}else{
navigator.app.exitApp();
}
}, false);
}, false);
希望对您有所帮助。
想通了。 How to control android backbutton routes? 最后 0 票的答案是正确的。
You can controll it with "disableDeviceBackButtonHandler" after ons.ready event. After that add a event listener for back button and do anything you want.
ons.ready(function() {
ons.disableDeviceBackButtonHandler();
// Use Cordova handler
window.document.addEventListener('backbutton', function() {
// Handle backbutton event
}, false);
});