Cordova Backbutton事件预防失效[phonegap&x2B;onsenUI]

Cordova Backbutton事件预防失效[phonegap&x2B;onsenUI],cordova,phonegap-build,onsen-ui,Cordova,Phonegap Build,Onsen Ui,我正在用phonegap+OnsenUI构建一个简单的应用程序,但我注意到OnsenUI正在控制我的BackButton事件,因此我无法使用evt.preventDefault() 这就是我想做的: document.addEventListener("backbutton", backButtonFire, false); function backButtonFire(evt) { evt.preventDefault(); evt.stopPropagation(); aler

我正在用phonegap+OnsenUI构建一个简单的应用程序,但我注意到OnsenUI正在控制我的BackButton事件,因此我无法使用
evt.preventDefault()

这就是我想做的:

document.addEventListener("backbutton", backButtonFire, false);
function backButtonFire(evt) {
  evt.preventDefault();
  evt.stopPropagation();
  alert(1);
}
当事件被触发时,我会看到警报(1),但应用程序仍会进入后台


在这种情况下如何使用
preventDefault

找到了答案,我在onsenui.js上找到了:

  /**
   * Disable this framework to handle cordova "backbutton" event.
   */
  disableDeviceBackButtonHandler: function() {
    this._getOnsenService().DeviceBackButtonHandler.disable();
  },
所以我用了:

ons.disableDeviceBackButtonHandler();

现在它工作得很好,但是它禁用了所有OnsenUI backbutton处理程序设置,因此您需要自己设置一个。

您是否将该eventListener绑定到DeviceReady事件的eventListener中?你到底想得到什么?防止按钮返回页面或将应用程序移动到后台?据我所知,后台/关闭是无法阻止的。