javascript - 后退按钮永远被拦截 - Phonegap/Android

标签 javascript android html cordova

在我的 Android PhoneGap/Cordova 3.5 项目中,我有 3 个 html 页面(index.html 中的一个按钮调用 page2.html,其中还有另一个按钮调用 >page3.html)。

page2.html中,我在deviceReady中覆盖后退按钮:

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

然后

function onBackKeyDown() {
            console.log("onBackKeyDown");
            navigator.app.exitApp();
        }

但是在page3.html中我想让Android控制后退按钮,这样我就不会在page3.html中覆盖它。 相反,在 page3.html 中后退按钮被禁用。

问题:

  1. 这是预期的行为吗(覆盖一个意味着覆盖 曾经)?
  2. 如何摆脱这个问题? (将后退按钮的控制权留给 Android 随时可用)

最佳答案

您可以在OnBackKeyDown事件中查看页面:

function onBackKeyDown() {
  var pagename = // get the page name here
  if ( pagename == page3.html ) {
    history.back();
  }
  else {
    navigator.app.exitApp();
  }
}

关于javascript - 后退按钮永远被拦截 - Phonegap/Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24429771/

相关文章:

javascript - 单击同一 div 内的按钮时关闭 div

javascript - 如何使用 Javascript 和 PHP 为我自己的广告网络生成广告 block

javascript - 是否可以让 $(window) 粘在一个特定的元素上而不移动?

javascript - 计算 HTML 表格 TD 中两个数字之间的百分比

android - 如何在 Parse 设置中获取 applicationID 和服务器?

android - Flutter AlertDialog Navigator 弹出黑屏问题

java - 如何从Fragment中调用Fragment以及数据

javascript - Knockoutjs 和 Jquery 可拖动 div

javascript - 建立关联时,哪些方法/mixin sequelize 添加到模型中?

javascript - AngularJS - 无法清空输入字段