处理Android的后退按钮在一个特定的地方- Cordova/Phonegap

Handling Android back button in a particular place - Cordova/Phonegap

本文关键字:Cordova Phonegap 一个 Android 按钮 处理      更新时间:2023-09-26

我正在使用Cordova和Intel的Appframework开发一个移动应用程序。

我想控制Android硬件后退按钮直接到其他一些页面(表单提交后,我不希望用户回到表单。相反,我想引导他们到其他页面)。

当用户在homediv (#home)上时,我想退出应用。

正如我从cordova/cordova文档中学到的那样,我应该像下面这样向DOM添加一个事件侦听器。

document.addEventListener("backbutton", onBackKeyDown, false);

但是这添加了一个通用事件,每当按下后退按钮时,事件就会触发(我已经尝试过了)。

在Intel Appframework中,我可以通过将函数声明为data-load属性来加载面板上的函数。

如何将backbutton函数只加载到特定的div中?

我希望它是清楚的。如果需要进一步说明,请告诉我。

注册事件侦听器,然后在事件触发时检查div是否存在。我不太确定你的意思是"我如何才能加载backbutton函数只到一个特定的div?"但是我假设你的意思是div是可见的或者它以某种方式有焦点…您可以检查构成"load…到一个特定的div"在onBackKeyDown函数的IF语句中。

// device APIs are available
function onDeviceReady() {
  // Register the event listener
  document.addEventListener("backbutton", onBackKeyDown, false);
}

// Handle the back button
function onBackKeyDown() {
  if (--check for your event criteria here--){ -- do what you want here--}
  else {
      if (window.confirm("Exit the application?")) {
        navigator.app.exitApp();
      }
  }
}