2015-02-27 16 views
5

Mam następujący logiczny dla mojej aplikacji mobilnych przy użyciu Cordova, a angularjsClose Cordova aplikacja na tylnej przycisku

Process moja logika w mobile.js zawarte w index.html jak zapisywania plików na sdcard następnie przekierować użytkownika z drugiej strony html używając

window.location.href="main.html"; 

który użyje pliki umieszczone w sdcard przez mobile.js

Emisja mam skierowaną jest to, że kiedy jestem na stronie głównej i na main.html użytkownika naciska przycisk powrotu, powraca do pliku index.html, a następnie, po proc Essing wraca do main.html zamiast do zamknięcia aplikacji.

Próbowałem przy użyciu obiektu history.length z „BackButton” EventListener

 document.addEventListener('deviceready',function(){ 
     document.addEventListener('backbutton',function(e){ 
      console.log("history is "+history.length); 
      if(history.length==1){ 
       e.preventDefault(); 
       navigator.app.exitApp(); 
      } 
      else{ 
       navigator.app.backHistory(); 
      } 
     },false); 
    },false); 

ale to nie zmniejsza długość kiedy wraca, tylko zwiększa, więc aplikacja wraca do index.html . (history.length jest zawsze większa niż 1)

Szukałem rozwiązania dostępne, jak

document.addEventListener("backbutton", function(e){ 
if($.mobile.activePage.is('#homepage')){ 
    /* 
    Event preventDefault/stopPropagation not required as adding backbutton 
     listener itself override the default behaviour. Refer below PhoneGap link. 
    */ 
    //e.preventDefault(); 
    navigator.app.exitApp(); 
} 
else { 
    navigator.app.backHistory() 
} 
}, false); 

ale problem w użyciu go jest, gdy użytkownik przechodzi do

second-page->homepage->third-page->homepage 

aplikacja zostanie zamknięta, ale zamiast tego powinna przejść do trzeciej strony.

Odpowiedz

1

Można użyć zdarzenia mobilnego pagelad jQuery, aby zachować własną listę historii, której długość zmniejsza się po powrocie. Coś w tym stylu (niesprawdzona z mojej głowy, może nie być dokładnie poprawna):

+0

spróbuje. –

Powiązane problemy