menus.onClicked

当点击菜单项时触发。

为了与其他浏览器兼容,Firefox 通过 contextMenus 命名空间和 menus 命名空间提供此事件。

语法

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

事件具有三个功能

addListener(listener)

为该事件添加侦听器。

removeListener(listener)

停止侦听此事件。listener 参数是要移除的侦听器。

hasListener(listener)

检查是否为该事件注册了 listener。如果正在侦听,则返回 true,否则返回 false

addListener 语法

参数

listener

当此事件发生时调用的函数。该函数传递以下参数

info

menus.OnClickData。有关所点击项目的的信息以及点击发生时的上下文。

tab

tabs.Tab。点击发生选项卡的详细信息。如果点击未发生在选项卡中或选项卡上,则此参数将缺失。

浏览器兼容性

BCD 表格仅在浏览器中加载

示例

此示例侦听菜单项的点击,然后记录项目的 ID 和选项卡 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}`);
});

扩展示例

注意:此 API 基于 Chromium 的 chrome.contextMenus API。此文档源自 Chromium 代码中的 context_menus.json