3
我有使用ionframework和cordova完成的應用程序。在我的應用程序中,我有要求,如果用戶按下按鈕,然後我需要忽略它。但只有在用戶第三次按下它時纔會關閉應用程序。科爾多瓦backbutton preventDefault不起作用
以前的項目是使用phonegap和jquery完成的,代碼工作相同。我做了一個小的解決方法,當我拋出一個異常,然後它不應該關閉它的應用程序。
document.addEventListener("backbutton", function (e) {
if (new Date() - firstDateClick > 1000) {
firstDateClick = new Date();
totalClicks = 1;
} else {
totalClicks++;
if (totalClicks >= 3) {
var answer = confirm('Are You Sure You Want Exit');
if (answer) {
var service = angular.injector(['ng', 'starter.services']).get('DanceService');
service.logEvent("exit")
.then(function() {
alert('exit1')
if (navigator.app) {
navigator.app.exitApp();
}
else if (navigator.device) {
navigator.device.exitApp();
}
})
} else {
totalClicks = 1;
}
}
}
throw "ignore"
});
但我不喜歡主意拋出異常。
我不知道你在哪裏使用@jcesar我只張貼的preventDefault – jcesarmobile
解決方法... –
無論如何,如果你聽backbutton事件並創建一個函數不管理它,你不必防止任何事情。嘗試添加第三個參數給函數。 document.addEventListener(「backbutton」,yourCallbackFunction,false); – jcesarmobile