ionicframework와 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