angularjs 设备后退按钮不起作用
angularjs device back button not working
我正在尝试在单击设备后退按钮、搜索互联网并提出编码时创建对话框。
1.when 我使用下面的代码,单击后退按钮显示对话框正常,当我单击 ok:the 应用程序关闭时取消。
2. 当我点击取消时:应用程序关闭。
app.run(['$rootScope','$mdDialog','$cordovaDialogs', function($rootScope, $mdDialog, $cordovaDialogs) {
document.addEventListener("deviceready", function() {
console.log("deviceready");
document.addEventListener("backbutton", onBackKeyDown,false);
function onBackKeyDown() {
if(confirm("Are You sure You wanna Exit?")){
console.log("true");
navigator.app.exitApp();
}else{
return false;
}
}
},false);
$rootScope.$on('$routeChangeSuccess', function(event, current, previous) {
$rootScope.title = current.$$route.title;
});
}]);
请查看上面的代码,我做错了什么..?我只需要在设备内部显示确认对话框就绪。取消不能结束应用程序。提前谢谢你们。
对不起,我已经像这样更改了代码,然后应用程序关闭确认的真假也是一样的。
app.run(['$rootScope','$mdDialog','$cordovaDialogs', function($rootScope, $mdDialog, $cordovaDialogs) {
document.addEventListener("deviceready", function() {
console.log("deviceready");
document.addEventListener("backbutton", onBackKeyDown,false);
function onBackKeyDown() {
if(confirm("Are You sure You wanna Exit?")){
console.log("true");
navigator.app.exitApp();
}else{
return false;
}
}
},true);
$rootScope.$on('$routeChangeSuccess', function(event, current, previous) {
$rootScope.title = current.$$route.title;
});
}]);
感谢大家的支持,在小伙伴们的帮助下我已经完成了这个问题..请看下面的代码..:)
app.run(['$rootScope','$location', function($rootScope,$location) {
document.addEventListener("deviceready", function() {
console.log("deviceready");
document.addEventListener("backbutton", onBackKeyDown, false);
function onBackKeyDown(e) {
e.preventDefault();
if ($location.path() === "/login" || $location.path() === "/home") {
var r=confirm("exit");
if(r==true){
console.log("not exit");
navigator.app.exitApp();
}else {
navigator.app.goBack();
}
}else {
/* $ionicHistory.goBack(); */
window.history.back();
navigator.app.goBack();
}
}
}, 100);
$rootScope.$on('$routeChangeSuccess', function(event, current, previous) {
$rootScope.title = current.$$route.title;
});
}]);
我正在尝试在单击设备后退按钮、搜索互联网并提出编码时创建对话框。 1.when 我使用下面的代码,单击后退按钮显示对话框正常,当我单击 ok:the 应用程序关闭时取消。 2. 当我点击取消时:应用程序关闭。
app.run(['$rootScope','$mdDialog','$cordovaDialogs', function($rootScope, $mdDialog, $cordovaDialogs) {
document.addEventListener("deviceready", function() {
console.log("deviceready");
document.addEventListener("backbutton", onBackKeyDown,false);
function onBackKeyDown() {
if(confirm("Are You sure You wanna Exit?")){
console.log("true");
navigator.app.exitApp();
}else{
return false;
}
}
},false);
$rootScope.$on('$routeChangeSuccess', function(event, current, previous) {
$rootScope.title = current.$$route.title;
});
}]);
请查看上面的代码,我做错了什么..?我只需要在设备内部显示确认对话框就绪。取消不能结束应用程序。提前谢谢你们。
对不起,我已经像这样更改了代码,然后应用程序关闭确认的真假也是一样的。
app.run(['$rootScope','$mdDialog','$cordovaDialogs', function($rootScope, $mdDialog, $cordovaDialogs) {
document.addEventListener("deviceready", function() {
console.log("deviceready");
document.addEventListener("backbutton", onBackKeyDown,false);
function onBackKeyDown() {
if(confirm("Are You sure You wanna Exit?")){
console.log("true");
navigator.app.exitApp();
}else{
return false;
}
}
},true);
$rootScope.$on('$routeChangeSuccess', function(event, current, previous) {
$rootScope.title = current.$$route.title;
});
}]);
感谢大家的支持,在小伙伴们的帮助下我已经完成了这个问题..请看下面的代码..:)
app.run(['$rootScope','$location', function($rootScope,$location) {
document.addEventListener("deviceready", function() {
console.log("deviceready");
document.addEventListener("backbutton", onBackKeyDown, false);
function onBackKeyDown(e) {
e.preventDefault();
if ($location.path() === "/login" || $location.path() === "/home") {
var r=confirm("exit");
if(r==true){
console.log("not exit");
navigator.app.exitApp();
}else {
navigator.app.goBack();
}
}else {
/* $ionicHistory.goBack(); */
window.history.back();
navigator.app.goBack();
}
}
}, 100);
$rootScope.$on('$routeChangeSuccess', function(event, current, previous) {
$rootScope.title = current.$$route.title;
});
}]);