menus.onClicked

Fired when a menu item is clicked.

For compatibility with other browsers, Firefox makes this event available via the contextMenus namespace as well as the menus namespace.

Syntax

js
browser.menus.onClicked.addListener(listener)
browser.menus.onClicked.removeListener(listener)
browser.menus.onClicked.hasListener(listener)

Events have three functions:

addListener(listener)

Adds a listener to this event.

removeListener(listener)

Stop listening to this event. The listener argument is the listener to remove.

hasListener(listener)

Check whether listener is registered for this event. Returns true if it is listening, false otherwise.

addListener syntax

Parameters

listener

The function called when this event occurs. The function is passed these arguments:

info

menus.OnClickData. Information about the item clicked and the context where the click happened.

tab

tabs.Tab. The details of the tab where the click took place. If the click did not take place in or on a tab, this parameter will be missing.

Browser compatibility

BCD tables only load in the browser

Examples

This example listens for clicks on a menu item, then log the item's ID and the tab ID:

js
browser.menus.create({
  id: "click-me",
  title: "Click me!",
  contexts: ["all"],
});

browser.menus.onClicked.addListener((info, tab) => {
  console.log(`Item ${info.menuItemId} clicked in tab ${tab.id}`);
});

Example extensions

Note: This API is based on Chromium's chrome.contextMenus API. This documentation is derived from context_menus.json in the Chromium code.