This is an event that fires when the user presses the menu button.

document.addEventListener("menubutton", yourCallbackFunction, false);


If you need to override the default menu button behaviour you can register an event listener for the 'menubutton' event.

Typically, you will want to attach an event listener with document.addEventListener once you receive the Cordova 'deviceready' event.

Supported Platforms

  • Android
  • BlackBerry WebWorks (OS 5.0 and higher)

Quick Example

document.addEventListener("menubutton", onMenuKeyDown, false);

function onMenuKeyDown() {
    // Handle the back button

Full Example

    <title>Cordova Menu Button Example</title>

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

    // Call onDeviceReady when Cordova is loaded.
    // At this point, the document has loaded but cordova-x.x.x.js has not.
    // When Cordova is loaded and talking with the native device,
    // it will call the event `deviceready`.
    function onLoad() {
        document.addEventListener("deviceready", onDeviceReady, false);

    // Cordova is loaded and it is now safe to make calls Cordova methods
    function onDeviceReady() {
        // Register the event listener
        document.addEventListener("menubutton", onMenuKeyDown, false);

    // Handle the menu button
    function onMenuKeyDown() {

  <body onload="onLoad()">