(可选)允许后退按钮事件随 cordova 一起传播



cordova 3.x 或 4 中是否有任何方法允许后退按钮事件传播到"普通"处理程序,就像您可以对大多数其他用户界面事件(单击、触摸等)所做的那样。

我们的问题是我们需要在某些情况下禁用后退按钮,但允许它在其余时间执行正常的后退导航。

目前,我们添加了一个全局单击侦听器,用于检查当前情况,然后根据它找到的内容添加/删除后退按钮侦听器。当事件由用户驱动时,这很好,但在某些情况下会导致应用程序(例如)弹出第二个或第三个对话框(这是必须禁用后退按钮的地方之一) - 这会导致骚动。

谢谢。

你必须小心。您的应用程序可能违反了应用商店的应用程序指南。例如,微软应用商店不允许您阻止硬件后退按钮返回。

在用户无法继续或返回的这些情况下,建议的行为是退出应用程序,最好是在提示用户再次单击"后退"将退出应用程序之后。

假设您只想在主页上退出应用程序。那么您必须在 DeviceReady 函数中编写以下行。

document.addeventlistener("backbutton", onBackButton,false);
   function onBackButton(){
          if($.mobile.activePage.attr("id") == "homepage"){
        navigator.app.exitApp();
    }
    else{
        navigator.app.backHistory();
    }

最新更新