navigator.app.backHistory并退出应用程序

时间:2014-09-18 21:47:39

标签: jquery cordova back-button

我在科尔多瓦练习。在Android上,也使用jQuery和jQuery Mobile 我在我的示例应用程序中有一个幻灯片。我检查变量“global_isOpen”时是否打开了menù。 这与“menubutton”完美结合:

document.addEventListener("menubutton", function(e){
  if(global_isOpen) {
    closeMenu();
  }
  else{
    openMenu();
  }
}, false);

但我对“后退”问题有疑问。这是代码:

document.addEventListener("backbutton", function(e){
  if(global_isOpen) {
    closeMenu(); //is ok
  }
  else{
    navigator.app.backHistory(); //this is the problem
  }
}, false);

navigator.app.backHistory();转到上一页,但如果我已经在第一页,应该从应用程序中出来,就像android的正常后退按钮一样。
如何查看我是否已经在第一页? 我不必检查我是否在主页上,因为我可以回到菜单上。我尝试用一​​个方案更好地解释。

  

示例:openApp --->首页 - >第1页 - >第2页 - >首页 - >第2页   使用“backbutton”,我应该这样做:page2 - >首页 - >第2页 - >第1页 - >   homePage ---> closeApp

1 个答案:

答案 0 :(得分:0)

您可以检测当前页面名称,并根据它进行编码

var activePage = $.mobile.activePage.attr("id");
if(activePage=="yourHomePageName")
     navigator.app.exitApp();

以下是页面结构的示例,并使用jsFiddle