2012-11-16 132 views
0

在我的首页上,我隐藏了一切,然后从服务器获取消息。如果有消息显示消息页面。但是当我回去使用Android的后退按钮时,应用程序结束(关闭),就好像我在首页并点击后退按钮。为什么?Jquery/Mobile导航问题

这里是我使用来显示消息页(从起始页)的代码:使用JQuery和PhoneGap的

$('#startpage').live('pageshow',function() 
{ 
    //Fetch message and in the ajax success handler: 
    $.mobile.changePage('pg/message/message.html',{transition: 'none'}); 
} 

I'm。

编辑:如果我尝试打开“弹出”(JQM 1.2)也是相同的结果。它不能关闭。看起来这个弹出窗口是“首页”。这怎么可能?

+0

您正在使用jQuery Mobile吗? – fusion27

+0

如果您在show startpage之前重定向,历史记录中的第一个页面是message.html,那么后退按钮强制退出。 – Flatlineato

+0

@Flatlineato - 但是如何在不发生这种情况的情况下重定向到另一个页面?另外...这不是在展示之前......这是在“pageshow”上。 – Juw

回答

2

Juw,PhoneGap的Event API为您提供了一个钩入Android用户返回按钮的钩子。看看下面的代码。如果用户在<div data-role="page" id="loginpage">上并点击后退按钮,他将离开应用程序,否则,他会返回一页。

document.addEventListener("backbutton", function (e) { 
    if ($.mobile.activePage.is('#loginpage')) { 
     e.preventDefault(); 
     navigator.app.exitApp(); 
    } else { 
     navigator.app.backHistory() 
    } 
}, false); 
+0

Thanx为你的答案,但我希望不涉及PhoneGap API在我的应用程序,我只是使用PhoneGap的“Android容器”。用jQuery解决,应该是可以的 – Juw

+0

我同意你的看法,应该可以不用PG,如果你找到一种方法来用w/o PG做,我想看看你的解决方案 – fusion27

+0

现在我将解决它,只需要点击一个按钮,用户如果想要查看消息就必须点击按钮,这是一个非常糟糕的解决方案,因为该消息可以包含有关新版本的信息,但现在它会有直到我找到一个更好的方式来做到这一点。 – Juw