在cordova 3.x或4中是否有任何方法允许后退按钮事件传播到"正常"处理程序,就像你可以处理大多数其他用户界面事件(点击,触摸等)。
我们的问题是我们需要在某些情况下禁用后退按钮,但允许它在其余时间执行正常的后退导航。
目前,我们添加了一个全局点击侦听器,用于检查当前情况,然后添加/删除后退按钮侦听器,具体取决于它找到的内容。 这很好,而事件是由用户驱动的,但是某些情况会导致应用程序(例如)弹出第二个或第三个对话框(这是必须禁用后退按钮的地方之一) - 这会引起骚动。
感谢。
答案 0 :(得分:2)
你必须小心。您的应用程序可能违反了应用程序商店的应用程序指南。例如,Microsoft应用商店不允许您阻止硬件返回按钮返回。
在用户无法继续或返回的情况下,建议的行为是退出应用程序,最好在提示用户再次单击后退出应用程序。
答案 1 :(得分:1)
如果您只想在主页上想要退出应用程序,那么您必须在DeviceReady函数中编写以下行。
document.addeventlistener("backbutton", onBackButton,false);
function onBackButton(){
if($.mobile.activePage.attr("id") == "homepage"){
navigator.app.exitApp();
}
else{
navigator.app.backHistory();
}