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

js
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. Gibt true zurück, wenn es lauscht, ansonsten false.

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 mehrere Shift, Alt, Command, Ctrl oder MacCtrl sein können.

button

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, und 1 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:

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);
});

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.