當時用的是ionic開發一個app,需求是,當按下手機的返回按鈕,在指定的頁面雙擊退出,而在其餘頁面點擊一次返回到上個頁面;app
其實用ionic自帶的服務就能夠解決:ionic
//雙擊退出 $ionicPlatform.registerBackButtonAction(function (e) { //判斷處於哪一個頁面時雙擊退出 if($location.path() =='/message' || $location.path() =='/work' || $location.path() =='/mine' || $location.path()=='/login'){ if ($rootScope.backButtonPressedOnceToExit) { $rootScope.disconnect(); ionic.Platform.exitApp(); } else { $rootScope.backButtonPressedOnceToExit = true; $CommonFactory.showToast('再按一次退出程序',"short","bottom"); $timeout( function () { $rootScope.backButtonPressedOnceToExit = false; }, 2000); } }else{ $CommonFactory.topBack(); } e.preventDefault(); return false; }, 101);
可是,我用了hbuider的編輯器,能夠一邊調試一邊在手機上看,全部就出現了不可以返回退出;編輯器
在Hbuider中也能夠實現監聽手機返回鍵:ide
document.addEventListener("plusready", function(e) { plus.key.addEventListener('backbutton', function(e) { plus.nativeUI.confirm("退出程序?", function(event) { if (event.index) { plus.runtime.quit(); } }, null, ["取消", "肯定"]); }, false); });
由於ionic是基於PhoneGap的編譯平臺,因此使用Hbuilder調試時沒有效果;ui
使用ionic打包以後應該會沒問題了把!spa