Javascript 如何在PhoneGap中捕获本机(菜单)按钮按下?
通过调用Javascript 如何在PhoneGap中捕获本机(菜单)按钮按下?,javascript,android,cordova,Javascript,Android,Cordova,通过调用BackButton.override()然后连接到backKeyDown事件,我可以按下后退按钮进行注册 但是似乎没有MenuButton.override()此外,在菜单下挂起也不会注册按下按钮 这是我的(非功能性)代码。我错过了什么 <script type="text/javascript" charset="utf-8" src="phonegap.js"></script> <script type="text/javascri
BackButton.override()
然后连接到backKeyDown
事件,我可以按下后退按钮进行注册
但是似乎没有MenuButton.override()代码>此外,在菜单下挂起也不会注册按下按钮
这是我的(非功能性)代码。我错过了什么
<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>
document.addEventListener(“deviceready”,函数(){
警报(“已初始化”);
},假);
document.addEventListener(“menuKeyDown”,function()){
警报('menu_pressed');//永远不会发生
},假);
最新版本的phongap.js不支持覆盖菜单键
要进行此编辑,请添加以下代码:
KeyEvent.prototype.menuTrigger = function()
{
var e = document.createEvent('Events');
e.initEvent('menuKeyDown');
document.dispatchEvent(e);
}
希望这能对您有所帮助。谢谢,效果很好!我在DeviceRady回调中添加了它,并将menuKeyDown的addEventListener移到了DeviceRady回调之后。