pageAction.onClicked
{{AddonSidebar}}
Fired when a page action icon is clicked. This event will not fire if the page action has a popup.
To define a right-click action, use the {{WebExtAPIRef('contextMenus')}}
API with the “page_action” {{WebExtAPIRef('contextMenus/ContextType', 'context type', '', 'nocode')}}
.
Syntax
browser.pageAction.onClicked.addListener(listener)
browser.pageAction.onClicked.removeListener(listener)
browser.pageAction.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.
- : Stop listening to this event. The
hasListener(listener)
- : Checks whether a
listener
is registered for this event. Returnstrue
if it is listening,false
otherwise.
- : Checks whether a
addListener syntax
Parameters
-
listener
-
: The function called when this event occurs. The function is passed these arguments:
-
tab
- : A
{{WebExtAPIRef('tabs.Tab')}}
object representing the tab whose page action was clicked.
- : A
-
OnClickData
-
: An object containing information about the click.
modifiers
- : An
array
. The keyboard modifiers active at the time of the click, being one or more ofShift
,Alt
,Command
,Ctrl
, orMacCtrl
.
- : An
button
- : An
integer
. Indicates the button used to click the page action icon:0
for a left-click or a click not associated with a mouse, such as one from the keyboard and1
for a middle button or wheel click. Note that the right-click is not supported because Firefox consumes that click to display the context menu before this event is triggered.
- : An
-
-
-
Browser compatibility
{{Compat}}
Examples
When the user clicks the page action, hide it, and navigate the active tab to “https://giphy.com/explore/cat”:
let catGifs = "https://giphy.com/explore/cat";
browser.pageAction.onClicked.addListener((tab) => {
browser.pageAction.hide(tab.id);
browser.tabs.update({ url: catGifs });
});
browser.pageAction.onClicked.addListener(() => {});
{{WebExtExamples}}
[!NOTE] This API is based on Chromium’s
chrome.pageAction
API. This documentation is derived frompage_action.json
in the Chromium code.