action.onClicked
当浏览器操作图标被点击时触发。如果浏览器操作有一个弹出窗口,此事件将不会触发。
注意: 此 API 在清单 V3 或更高版本中可用。
要定义右键单击操作,请使用 contextMenus
API 和 "browser_action" 上下文类型.
语法
js
browser.action.onClicked.addListener(listener)
browser.action.onClicked.removeListener(listener)
browser.action.onClicked.hasListener(listener)
事件有三个函数
addListener(listener)
-
向此事件添加监听器。
removeListener(listener)
-
停止监听此事件。
listener
参数是要移除的监听器。 hasListener(listener)
-
检查
listener
是否注册到此事件。如果正在监听,则返回true
,否则返回false
。
addListener 语法
参数
listener
-
当此事件发生时调用的函数。该函数将传递以下参数
tab
-
tabs.Tab
. 当图标被点击时处于活动状态的选项卡。 OnClickData
-
包含有关点击的信息的对象。
modifiers
-
一个
array
. 点击时活动的键盘修饰键,可以是Shift
、Alt
、Command
、Ctrl
或MacCtrl
中的一个或多个。 -
一个
integer
. 指示用于点击页面操作图标的按钮:0
表示左键单击或与鼠标无关的点击,例如键盘点击,1
表示中间按钮或滚轮点击。请注意,不支持右键单击,因为 Firefox 会使用该点击显示上下文菜单,然后再触发此事件。
示例
当用户点击图标时,禁用活动选项卡的图标,并记录选项卡的 URL
js
browser.action.onClicked.addListener((tab) => {
// disable the active tab
browser.action.disable(tab.id);
// requires the "tabs" or "activeTab" permission, or host permissions for the URL
console.log(tab.url);
});
浏览器兼容性
BCD 表格仅在浏览器中加载
注意: 此 API 基于 Chromium 的 chrome.action
API。此文档源于 Chromium 代码中的 browser_action.json
.