【问题标题】:How do I Capture native (Menu) button presses in PhoneGap?如何在 PhoneGap 中捕获本机(菜单)按钮按下?
【发布时间】:2010-12-07 03:23:06
【问题描述】:

通过调用BackButton.override();,然后连接到backKeyDown 事件,我可以按下后退按钮进行注册。

但似乎没有MenuButton.override(); 此外,挂在menuKeyDown 上并不会注册按钮按下。

这是我的(非功能性)代码。我错过了什么?

<script type="text/javascript" charset="utf-8" src="phonegap.js"></script>      

  <script type="text/javascript" charset="utf-8">
        document.addEventListener("deviceready", function() {

            alert('initialized');
    }, false);
    document.addEventListener("menuKeyDown", function() {

            alert('menu_pressed'); // Never happens
    }, false);
  </script>

【问题讨论】:

    标签: javascript android cordova


    【解决方案1】:

    最新版本的 phongap.js 不支持覆盖菜单键 对于此编辑,您复制添加以下代码:

    KeyEvent.prototype.menuTrigger = function()
    {
      var e = document.createEvent('Events');
      e.initEvent('menuKeyDown');
      document.dispatchEvent(e);
    }
    

    希望这会对你有所帮助。

    【讨论】:

    • 谢谢,效果很好!我在 deviceready 回调中添加了它,并将 menuKeyDown 的 addEventListener 移动到它之后的 deviceready 回调中。
    猜你喜欢
    • 2012-02-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-05
    • 2013-12-20
    • 1970-01-01
    • 2018-06-03
    • 2010-09-14
    相关资源
    最近更新 更多