action.onClicked
Wird ausgelöst, wenn ein Browseraktionssymbol angeklickt wird. Dieses Ereignis wird nicht ausgelöst, wenn die Browseraktion ein Popup hat.
Hinweis: Diese API ist in Manifest V3 oder höher verfügbar.
Um eine Rechtsklick-Aktion zu definieren, verwenden Sie die contextMenus
API mit dem "browser_action" Kontexttyp.
Syntax
browser.action.onClicked.addListener(listener)
browser.action.onClicked.removeListener(listener)
browser.action.onClicked.hasListener(listener)
Ereignisse haben drei Funktionen:
addListener(listener)
-
Fügt diesem Ereignis einen Listener hinzu.
removeListener(listener)
-
Stoppt das Lauschen dieses Ereignisses. Das Argument
listener
ist der zu entfernende Listener. hasListener(listener)
-
Überprüft, ob
listener
für dieses Ereignis registriert ist. Gibttrue
zurück, wenn es lauscht, ansonstenfalse
.
addListener-Syntax
Parameter
listener
-
Die Funktion, die aufgerufen wird, wenn dieses Ereignis eintritt. Der Funktion werden folgende Argumente übergeben:
tab
-
tabs.Tab
. Der Tab, der aktiv war, als das Symbol angeklickt wurde. OnClickData
-
Ein Objekt, das Informationen über den Klick enthält.
modifiers
-
Ein
Array
. Die zum Zeitpunkt des Klicks aktiven Tastaturmodifikatoren, von denen einer oder mehrereShift
,Alt
,Command
,Ctrl
oderMacCtrl
sein können. -
Ein
Integer
. Gibt die Schaltfläche an, mit der auf das Seitenaktionssymbol geklickt wurde:0
für einen Linksklick oder einen Klick, der nicht mit einer Maus assoziiert ist, wie z.B. einer von der Tastatur, und1
für einen Klick mit der mittleren Schaltfläche oder dem Rad. Beachten Sie, dass der Rechtsklick nicht unterstützt wird, da Firefox diesen Klick verbraucht, um das Kontextmenü anzuzeigen, bevor dieses Ereignis ausgelöst wird.
Beispiele
Wenn der Benutzer auf das Symbol klickt, deaktivieren Sie es für den aktiven Tab und protokollieren Sie die URL des Tabs:
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);
});
Browser-Kompatibilität
BCD tables only load in the browser
Hinweis:
Diese API basiert auf der chrome.action
API von Chromium. Diese Dokumentation stammt aus browser_action.json
im Chromium-Code.