![](/img/trans.png)
[英]Unusual back button behavior jquery mobile, phonegap/cordova
[英]Phonegap + AngularJS - back button behavior
數小時以來,我一直在嘗試在AngularJS應用程序中覆蓋Android的后退按鈕,但我做不到。 我已經能夠使“后退”按鈕停止工作,但無法使其退回甚至無法進入主頁。 我沒有使用路由-相反,我只是在切換頁面,所以我什至不確定是否可以返回。 如果我可以轉到主頁,那就太好了。 這是我的代碼:
var onDeviceReady = function(){
document.addEventListener("backbutton", handleDeviceBackButton, false);
}
function handleDeviceBackButton(){
angular.element('[ng-controller=AppCtrl]').scope().goHome();
menu.setMainPage('home.html', {closeMenu: true});
}
document.addEventListener("deviceready", onDeviceReady, false);
如果只需要回去使用
$window.history.back();
但是,我建議您使用ui-router之類的路由解決方案。 使用$ state,導航更加簡單:
$state.go('home');
您可以依靠瀏覽器的后退按鈕來代替通過PhoneGap添加事件偵聽器。 您的應用是網頁,因此Android上的“后退”按鈕將返回到您的歷史記錄狀態 。 避免設備事件,您可以直接在桌面瀏覽器中調試代碼。
如果要阻止特定的返回狀態或進行重定向,請使用:
$rootScope.$on('$stateChangeSuccess', function (ev, to, toParams, from, fromParams) {
if (from.name == "splashscreen" && to.name =="home"){
//redirect using navigation $state service
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.