chrome.action

Beschreibung

Mit der chrome.action API kannst du das Symbol der Erweiterung in der Google Chrome-Symbolleiste steuern.

Die Aktionssymbole werden in der Symbolleiste des Browsers neben der Omnibox angezeigt. Nach der Installation erscheinen diese im Erweiterungsmenü (das Puzzleteil-Symbol). Nutzer können das Erweiterungssymbol an die Symbolleiste anpinnen.

Verfügbarkeit

Chrome 88 oder höher MV3+

Manifest

Die folgenden Schlüssel müssen im Manifest deklariert werden, um diese API verwenden zu können.

"action"

Wenn Sie die chrome.action API verwenden möchten, geben Sie als "manifest_version" 3 an und fügen Sie den Schlüssel "action" in die Manifestdatei ein.

{
  "name": "Action Extension",
  ...
  "action": {
    "default_icon": {              // optional
      "16": "images/icon16.png",   // optional
      "24": "images/icon24.png",   // optional
      "32": "images/icon32.png"    // optional
    },
    "default_title": "Click Me",   // optional, shown in tooltip
    "default_popup": "popup.html"  // optional
  },
  ...
}

Der Schlüssel "action" (zusammen mit seinen untergeordneten Elementen) ist optional. Ist die Erweiterung nicht eingebunden, wird sie weiterhin in der Symbolleiste angezeigt, damit Sie auf das Menü der Erweiterung zugreifen können. Aus diesem Grund empfehlen wir, immer mindestens die Schlüssel "action" und "default_icon" anzugeben.

Konzepte und Nutzung

Teile der Benutzeroberfläche

Icon

Das Symbol ist das Hauptbild in der Symbolleiste für Ihre Erweiterung und wird mit dem Schlüssel "default_icon" im Schlüssel "action" Ihres Manifests festgelegt. Symbole müssen 16 DIPs (Device Independent Pixel) breit und hoch sein.

Der Schlüssel "default_icon" ist ein Wörterbuch mit Größen von Bildpfaden. Chrome wählt anhand dieser Symbole aus, welche Bildskala verwendet werden soll. Wenn keine genaue Übereinstimmung gefunden wird, wählt Chrome die nächstgelegene verfügbare Option aus und skaliert sie so, dass sie zum Bild passt. Dies kann sich auf die Bildqualität auswirken.

Da Geräte mit weniger gängigen Skalierungsfaktoren wie 1,5x oder 1,2x immer häufiger verwendet werden, empfehlen wir Ihnen, mehrere Größen für Symbole bereitzustellen. Dadurch ist Ihre Erweiterung auch zukunftssicher, um potenzielle Änderungen der Symbolanzeigegröße zu verhindern.

Sie können auch action.setIcon() aufrufen, um das Symbol Ihrer Erweiterung programmatisch festzulegen. Dazu geben Sie einen anderen Bildpfad an oder stellen ein dynamisch generiertes Symbol mit dem HTML-Canvas-Element oder, bei Einstellung über einen Erweiterung Service Worker, die Offscreen Canvas API bereit.

const canvas = new OffscreenCanvas(16, 16);
const context = canvas.getContext('2d');
context.clearRect(0, 0, 16, 16);
context.fillStyle = '#00FF00';  // Green
context.fillRect(0, 0, 16, 16);
const imageData = context.getImageData(0, 0, 16, 16);
chrome.action.setIcon({imageData: imageData}, () => { /* ... */ });

Bei gepackten Erweiterungen, die aus einer CRX-Datei installiert wurden, können Bilder in den meisten Formaten vorliegen, die von der Blink-Rendering-Engine dargestellt werden können, darunter PNG, JPEG, BMP und ICO. SVG wird nicht unterstützt. Entpackte Erweiterungen müssen PNG-Bilder verwenden.

Kurzinfo (Titel)

Die Kurzinfo oder der Titel wird angezeigt, wenn der Nutzer den Mauszeiger auf das Symbol der Erweiterung in der Symbolleiste hält. Sie ist auch in den barrierefreien Text eingebunden, der von Screenreadern vorgelesen wird, wenn die Schaltfläche hervorgehoben wird.

Die Standardkurzinfo wird mit dem Feld "default_title" des Schlüssels "action" in manifest.json festgelegt. Sie können sie auch programmatisch festlegen, indem Sie action.setTitle() aufrufen.

Badge

Bei Aktionen kann optional ein „Badge“ angezeigt werden. Das ist Text, der über das Symbol gelegt wird. So können Sie die Aktion aktualisieren und einige Informationen zum Status der Erweiterung anzeigen lassen, z. B. ein Zähler. Das Badge besteht aus einer Textkomponente und einer Hintergrundfarbe. Da der Platz begrenzt ist, sollte der Badgetext maximal vier Zeichen umfassen.

Wenn du ein Badge erstellen möchtest, kannst du es programmatisch durch Aufrufen von action.setBadgeBackgroundColor() und action.setBadgeText() festlegen. Das Manifest enthält keine Standardeinstellung für das Badge. Die Farbwerte des Logos können entweder ein Array mit vier Ganzzahlen zwischen 0 und 255 sein, aus denen die RGBA-Farbe des Logos besteht, oder ein String mit einem CSS-Farbwert.

chrome.action.setBadgeBackgroundColor(
  {color: [0, 255, 0, 0]},  // Green
  () => { /* ... */ },
);

chrome.action.setBadgeBackgroundColor(
  {color: '#00FF00'},  // Also green
  () => { /* ... */ },
);

chrome.action.setBadgeBackgroundColor(
  {color: 'green'},  // Also, also green
  () => { /* ... */ },
);

Das Pop-up einer Aktion wird angezeigt, wenn der Nutzer in der Symbolleiste auf die Aktionsschaltfläche der Erweiterung klickt. Das Pop-up-Fenster kann beliebige HTML-Inhalte enthalten und wird automatisch an den Inhalt angepasst. Das Pop-up muss zwischen 25 x 25 und 800 x 600 Pixel groß sein.

Das Pop-up wird anfänglich durch das Attribut "default_popup" im Schlüssel "action" in der Datei manifest.json festgelegt. Falls vorhanden, sollte diese Eigenschaft auf einen relativen Pfad im Erweiterungsverzeichnis verweisen. Er kann auch dynamisch aktualisiert werden, um mit der Methode action.setPopup() auf einen anderen relativen Pfad zu verweisen.

Anwendungsfälle

Status pro Tab

Erweiterungsaktionen können für jeden Tab einen anderen Status haben. Wenn Sie einen Wert für einen einzelnen Tab festlegen möchten, verwenden Sie das Attribut tabId in den Einstellungsmethoden der action API. Wenn Sie beispielsweise den Badgetext für einen bestimmten Tab festlegen möchten, gehen Sie so vor:

function getTabId() { /* ... */}
function getTabBadge() { /* ... */}

chrome.action.setBadgeText(
  {
    text: getTabBadge(tabId),
    tabId: getTabId(),
  },
  () => { ... }
);

Wenn Sie das Attribut tabId weglassen, wird die Einstellung als globale Einstellung behandelt. Tabspezifische Einstellungen haben Vorrang vor globalen Einstellungen.

Aktivierter Status

Standardmäßig sind Symbolleistenaktionen auf jeder Registerkarte aktiviert (anklickbar). Sie können dies mit den Methoden action.enable() und action.disable() steuern. Dies wirkt sich nur darauf aus, ob das Pop-up-Ereignis (falls vorhanden) oder das action.onClicked-Ereignis an Ihre Erweiterung gesendet wird. Es wirkt sich nicht darauf aus, ob die Aktion in der Symbolleiste angezeigt wird.

Beispiele

Die folgenden Beispiele zeigen einige gängige Möglichkeiten, wie Aktionen in Erweiterungen verwendet werden. Wenn Sie diese API testen möchten, installieren Sie das Action API-Beispiel aus dem Repository chrome-extension-sample.

Pop-up anzeigen

Es ist üblich, dass eine Erweiterung ein Pop-up anzeigt, wenn der Nutzer auf die Aktion der Erweiterung klickt. Wenn du dies in deiner eigenen Erweiterung implementieren möchtest, deklariere das Pop-up in deinem manifest.json und gib den Inhalt an, der in Chrome im Pop-up-Fenster angezeigt werden soll.

// manifest.json
{
  "name": "Action popup demo",
  "version": "1.0",
  "manifest_version": 3,
  "action": {
    "default_title": "Click to view a popup",
    "default_popup": "popup.html"
  }
}
<!-- popup.html -->
<!DOCTYPE html>
<html>
<head>
  <style>
    html {
      min-height: 5em;
      min-width: 10em;
      background: salmon;
    }
  </style>
</head>
<body>
  <p>Hello, world!</p>
</body>
</html>

Inhaltsskript beim Klicken einschleusen

Ein gängiges Muster für Erweiterungen besteht darin, dass sie ihre primäre Funktion mithilfe der Aktion der Erweiterung offenlegen. Das folgende Beispiel veranschaulicht dieses Muster. Wenn der Nutzer auf die Aktion klickt, wird ein Inhaltsskript in die aktuelle Seite eingefügt. Das Inhaltsskript zeigt dann eine Benachrichtigung an, um zu prüfen, ob alles wie erwartet funktioniert.

// manifest.json
{
  "name": "Action script injection demo",
  "version": "1.0",
  "manifest_version": 3,
  "action": {
    "default_title": "Click to show an alert"
  },
  "permissions": ["activeTab", "scripting"],
  "background": {
    "service_worker": "background.js"
  }
}
// background.js
chrome.action.onClicked.addListener((tab) => {
  chrome.scripting.executeScript({
    target: {tabId: tab.id},
    files: ['content.js']
  });
});
// content.js
alert('Hello, world!');

Aktionen mit deklarativen Inhalten emulieren

Dieses Beispiel zeigt, wie die Hintergrundlogik einer Erweiterung (a) eine Aktion standardmäßig deaktivieren und (b) declarativeContent verwenden kann, um die Aktion auf bestimmten Websites zu aktivieren.

// service-worker.js

// Wrap in an onInstalled callback to avoid unnecessary work
// every time the service worker is run
chrome.runtime.onInstalled.addListener(() => {
  // Page actions are disabled by default and enabled on select tabs
  chrome.action.disable();

  // Clear all rules to ensure only our expected rules are set
  chrome.declarativeContent.onPageChanged.removeRules(undefined, () => {
    // Declare a rule to enable the action on example.com pages
    let exampleRule = {
      conditions: [
        new chrome.declarativeContent.PageStateMatcher({
          pageUrl: {hostSuffix: '.example.com'},
        })
      ],
      actions: [new chrome.declarativeContent.ShowAction()],
    };

    // Finally, apply our new array of rules
    let rules = [exampleRule];
    chrome.declarativeContent.onPageChanged.addRules(rules);
  });
});

Typen

OpenPopupOptions

Chrome 99 oder höher

Attribute

  • windowId

    Nummer optional

    Die ID des Fensters, in dem das Aktions-Pop-up geöffnet werden soll. Wenn keine Angabe gemacht wird, wird standardmäßig das aktuell aktive Fenster verwendet.

TabDetails

Attribute

  • tabId

    Nummer optional

    Die ID des Tabs, für den der Status abgefragt werden soll. Wenn kein Tab angegeben ist, wird der nicht tabulatorspezifische Status zurückgegeben.

UserSettings

Chrome 91 und höher

Sammlung von benutzerdefinierten Einstellungen, die sich auf die Aktion einer Erweiterung beziehen.

Attribute

  • isOnToolbar

    boolean

    Gibt an, ob das Aktionssymbol der Erweiterung in der obersten Symbolleiste des Browserfensters sichtbar ist, d.h., ob die Erweiterung vom Nutzer „angepinnt“ wurde.

Methoden

disable()

Versprechen
chrome.action.disable(
  tabId?: number,
  callback?: function,
)

Deaktiviert die Aktion für einen Tab.

Parameter

  • tabId

    Nummer optional

    Die ID des Tabs, für den Sie die Aktion ändern möchten.

  • callback

    Funktion optional

    Der Parameter callback sieht so aus:

    ()=>void

Rückgaben

  • Promise<void>

    Promise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks werden jedoch aus Gründen der Abwärtskompatibilität bereitgestellt. Sie können nicht beide in einem Funktionsaufruf verwenden. Das Promise wird mit demselben Typ aufgelöst, der an den Callback übergeben wird.

enable()

Versprechen
chrome.action.enable(
  tabId?: number,
  callback?: function,
)

Aktiviert die Aktion für einen Tab. Aktionen sind standardmäßig aktiviert.

Parameter

  • tabId

    Nummer optional

    Die ID des Tabs, für den Sie die Aktion ändern möchten.

  • callback

    Funktion optional

    Der Parameter callback sieht so aus:

    ()=>void

Rückgaben

  • Promise<void>

    Promise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks werden jedoch aus Gründen der Abwärtskompatibilität bereitgestellt. Sie können nicht beide in einem Funktionsaufruf verwenden. Das Promise wird mit demselben Typ aufgelöst, der an den Callback übergeben wird.

getBadgeBackgroundColor()

Versprechen
chrome.action.getBadgeBackgroundColor(
  details: TabDetails,
  callback?: function,
)

Ruft die Hintergrundfarbe der Aktion ab.

Parameter

Rückgaben

  • Promise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks werden jedoch aus Gründen der Abwärtskompatibilität bereitgestellt. Sie können nicht beide in einem Funktionsaufruf verwenden. Das Promise wird mit demselben Typ aufgelöst, der an den Callback übergeben wird.

getBadgeText()

Versprechen
chrome.action.getBadgeText(
  details: TabDetails,
  callback?: function,
)

Ruft den Badgetext der Aktion ab. Wenn kein Tab angegeben ist, wird der nicht tabulatorspezifische Badgetext zurückgegeben. Wenn displayActionCountAsBadgeText aktiviert ist, wird ein Platzhaltertext zurückgegeben, es sei denn, die Berechtigung declarativeNetRequestFeedback wurde vorhanden oder tabulatorspezifischer Badgetext wurde angegeben.

Parameter

  • Details
  • callback

    Funktion optional

    Der Parameter callback sieht so aus:

    (result: string)=>void

    • Ergebnis

      String

Rückgaben

  • Versprechen<string>

    Promise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks werden jedoch aus Gründen der Abwärtskompatibilität bereitgestellt. Sie können nicht beide in einem Funktionsaufruf verwenden. Das Promise wird mit demselben Typ aufgelöst, der an den Callback übergeben wird.

getBadgeTextColor()

Versprechen Chrome 110 oder höher
chrome.action.getBadgeTextColor(
  details: TabDetails,
  callback?: function,
)

Ruft die Textfarbe der Aktion ab.

Parameter

Rückgaben

  • Promise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks werden jedoch aus Gründen der Abwärtskompatibilität bereitgestellt. Sie können nicht beide in einem Funktionsaufruf verwenden. Das Promise wird mit demselben Typ aufgelöst, der an den Callback übergeben wird.

getPopup()

Versprechen
chrome.action.getPopup(
  details: TabDetails,
  callback?: function,
)

Ruft das HTML-Dokument ab, das als Pop-up für diese Aktion festgelegt wurde.

Parameter

  • Details
  • callback

    Funktion optional

    Der Parameter callback sieht so aus:

    (result: string)=>void

    • Ergebnis

      String

Rückgaben

  • Versprechen<string>

    Promise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks werden jedoch aus Gründen der Abwärtskompatibilität bereitgestellt. Sie können nicht beide in einem Funktionsaufruf verwenden. Das Promise wird mit demselben Typ aufgelöst, der an den Callback übergeben wird.

getTitle()

Versprechen
chrome.action.getTitle(
  details: TabDetails,
  callback?: function,
)

Ruft den Titel der Aktion ab.

Parameter

  • Details
  • callback

    Funktion optional

    Der Parameter callback sieht so aus:

    (result: string)=>void

    • Ergebnis

      String

Rückgaben

  • Versprechen<string>

    Promise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks werden jedoch aus Gründen der Abwärtskompatibilität bereitgestellt. Sie können nicht beide in einem Funktionsaufruf verwenden. Das Promise wird mit demselben Typ aufgelöst, der an den Callback übergeben wird.

getUserSettings()

Versprechen Chrome 91 oder höher
chrome.action.getUserSettings(
  callback?: function,
)

Gibt die vom Nutzer angegebenen Einstellungen zurück, die sich auf die Aktion einer Erweiterung beziehen.

Parameter

  • callback

    Funktion optional

    Der Parameter callback sieht so aus:

    (userSettings: UserSettings)=>void

Rückgaben

  • Promise<UserSettings>

    Promise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks werden jedoch aus Gründen der Abwärtskompatibilität bereitgestellt. Sie können nicht beide in einem Funktionsaufruf verwenden. Das Promise wird mit demselben Typ aufgelöst, der an den Callback übergeben wird.

isEnabled()

Versprechen Chrome 110 oder höher
chrome.action.isEnabled(
  tabId?: number,
  callback?: function,
)

Gibt an, ob die Erweiterungsaktion für einen Tab aktiviert ist (oder global, wenn kein tabId angegeben ist). Für Aktionen, die nur mit declarativeContent aktiviert wurden, wird immer „false“ zurückgegeben.

Parameter

  • tabId

    Nummer optional

    Die ID des Tabs, dessen Aktivierungsstatus Sie prüfen möchten.

  • callback

    Funktion optional

    Der Parameter callback sieht so aus:

    (isEnabled: boolean)=>void

    • isEnabled

      boolean

      „True“, wenn die Erweiterungsaktion aktiviert ist.

Rückgaben

  • Promise<boolean>

    Promise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks werden jedoch aus Gründen der Abwärtskompatibilität bereitgestellt. Sie können nicht beide in einem Funktionsaufruf verwenden. Das Promise wird mit demselben Typ aufgelöst, der an den Callback übergeben wird.

openPopup()

Versprechen Chrome 118 oder höher Richtlinie erforderlich
chrome.action.openPopup(
  options?: OpenPopupOptions,
  callback?: function,
)

Öffnet das Pop-up der Erweiterung.

Parameter

  • Optionen

    Gibt Optionen zum Öffnen des Pop-ups an.

  • callback

    Funktion optional

    Der Parameter callback sieht so aus:

    ()=>void

Rückgaben

  • Promise<void>

    Promise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks werden jedoch aus Gründen der Abwärtskompatibilität bereitgestellt. Sie können nicht beide in einem Funktionsaufruf verwenden. Das Promise wird mit demselben Typ aufgelöst, der an den Callback übergeben wird.

setBadgeBackgroundColor()

Versprechen
chrome.action.setBadgeBackgroundColor(
  details: object,
  callback?: function,
)

Hier legen Sie die Hintergrundfarbe des Logos fest.

Parameter

  • Details

    Objekt

    • Farbe

      string|ColorArray

      Ein Array von vier Ganzzahlen im Bereich [0,255], aus denen die RGBA-Farbe des Badges besteht. Undurchsichtiges Rot ist beispielsweise [255, 0, 0, 255]. Kann auch ein String mit einem CSS-Wert sein, wobei opakes Rot für #FF0000 oder #F00 steht.

    • tabId

      Nummer optional

      Begrenzt die Änderung auf die Auswahl eines bestimmten Tabs. Wird automatisch zurückgesetzt, wenn der Tab geschlossen wird.

  • callback

    Funktion optional

    Der Parameter callback sieht so aus:

    ()=>void

Rückgaben

  • Promise<void>

    Promise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks werden jedoch aus Gründen der Abwärtskompatibilität bereitgestellt. Sie können nicht beide in einem Funktionsaufruf verwenden. Das Promise wird mit demselben Typ aufgelöst, der an den Callback übergeben wird.

setBadgeText()

Versprechen
chrome.action.setBadgeText(
  details: object,
  callback?: function,
)

Legt den Badgetext für die Aktion fest. Das Logo wird über dem Symbol angezeigt.

Parameter

  • Details

    Objekt

    • tabId

      Nummer optional

      Begrenzt die Änderung auf die Auswahl eines bestimmten Tabs. Wird automatisch zurückgesetzt, wenn der Tab geschlossen wird.

    • Text

      String optional

      Es kann eine beliebige Anzahl von Zeichen übergeben werden, aber nur etwa vier passen in den Bereich. Wird ein leerer String ('') übergeben, wird der Badgetext gelöscht. Wenn tabId angegeben ist und text den Wert null hat, wird der Text für den angegebenen Tab gelöscht und als Standard für das allgemeine Badge verwendet.

  • callback

    Funktion optional

    Der Parameter callback sieht so aus:

    ()=>void

Rückgaben

  • Promise<void>

    Promise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks werden jedoch aus Gründen der Abwärtskompatibilität bereitgestellt. Sie können nicht beide in einem Funktionsaufruf verwenden. Das Promise wird mit demselben Typ aufgelöst, der an den Callback übergeben wird.

setBadgeTextColor()

Versprechen Chrome 110 oder höher
chrome.action.setBadgeTextColor(
  details: object,
  callback?: function,
)

Legt die Textfarbe für das Badge fest.

Parameter

  • Details

    Objekt

    • Farbe

      string|ColorArray

      Ein Array von vier Ganzzahlen im Bereich [0,255], aus denen die RGBA-Farbe des Badges besteht. Undurchsichtiges Rot ist beispielsweise [255, 0, 0, 255]. Kann auch ein String mit einem CSS-Wert sein, wobei opakes Rot für #FF0000 oder #F00 steht. Wenn Sie diesen Wert nicht festlegen, wird automatisch eine Farbe ausgewählt, die sich von der Hintergrundfarbe des Logos abhebt, sodass der Text sichtbar ist. Farben mit Alphawerten, die 0 entsprechen, werden nicht festgelegt und geben einen Fehler zurück.

    • tabId

      Nummer optional

      Begrenzt die Änderung auf die Auswahl eines bestimmten Tabs. Wird automatisch zurückgesetzt, wenn der Tab geschlossen wird.

  • callback

    Funktion optional

    Der Parameter callback sieht so aus:

    ()=>void

Rückgaben

  • Promise<void>

    Promise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks werden jedoch aus Gründen der Abwärtskompatibilität bereitgestellt. Sie können nicht beide in einem Funktionsaufruf verwenden. Das Promise wird mit demselben Typ aufgelöst, der an den Callback übergeben wird.

setIcon()

Versprechen
chrome.action.setIcon(
  details: object,
  callback?: function,
)

Legt das Symbol für die Aktion fest. Das Symbol kann entweder als Pfad zu einer Bilddatei, als Pixeldaten aus einem Canvas-Element oder als Wörterbuch eines dieser Elemente angegeben werden. Es muss entweder der path oder die imageData-Eigenschaft angegeben werden.

Parameter

  • Details

    Objekt

    • imageData

      ImageData|Objekt optional

      Entweder ein ImageData-Objekt oder ein Wörterbuch {size -> ImageData}, das das festzulegende Symbol darstellt. Wenn das Symbol als Wörterbuch angegeben ist, wird das tatsächlich zu verwendende Bild abhängig von der Pixeldichte des Bildschirms ausgewählt. Wenn die Anzahl der Bildpixel, die in eine Bildschirmbereichseinheit passen, scale ist, wird ein Bild mit der Größe scale * n ausgewählt, wobei n die Größe des Symbols auf der Benutzeroberfläche ist. Es muss mindestens ein Bild angegeben werden. Beachten Sie, dass "details.imageData = foo" äquivalent zu "details.imageData = {'16': foo}" ist.

    • Pfad

      String|Objekt optional

      Entweder ein relativer Bildpfad oder ein Wörterbuch {size -> relativer Bildpfad}, der auf das festzulegende Symbol verweist. Wenn das Symbol als Wörterbuch angegeben ist, wird das tatsächlich zu verwendende Bild abhängig von der Pixeldichte des Bildschirms ausgewählt. Wenn die Anzahl der Bildpixel, die in eine Bildschirmbereichseinheit passen, scale ist, wird ein Bild mit der Größe scale * n ausgewählt, wobei n die Größe des Symbols auf der Benutzeroberfläche ist. Es muss mindestens ein Bild angegeben werden. Beachten Sie, dass „details.path = foo“ äquivalent zu 'details.path = {'16': foo}' ist.

    • tabId

      Nummer optional

      Begrenzt die Änderung auf die Auswahl eines bestimmten Tabs. Wird automatisch zurückgesetzt, wenn der Tab geschlossen wird.

  • callback

    Funktion optional

    Der Parameter callback sieht so aus:

    ()=>void

Rückgaben

  • Promise<void>

    Chrome 96 und höher

    Promise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks werden jedoch aus Gründen der Abwärtskompatibilität bereitgestellt. Sie können nicht beide in einem Funktionsaufruf verwenden. Das Promise wird mit demselben Typ aufgelöst, der an den Callback übergeben wird.

setPopup()

Versprechen
chrome.action.setPopup(
  details: object,
  callback?: function,
)

Legt fest, dass das HTML-Dokument als Pop-up geöffnet werden soll, wenn der Nutzer auf das Symbol der Aktion klickt.

Parameter

  • Details

    Objekt

    • Pop-up

      String

      Der relative Pfad zur HTML-Datei, die in einem Pop-up-Fenster angezeigt werden soll. Wenn der Wert auf den leeren String ('') gesetzt ist, wird kein Pop-up-Fenster angezeigt.

    • tabId

      Nummer optional

      Begrenzt die Änderung auf die Auswahl eines bestimmten Tabs. Wird automatisch zurückgesetzt, wenn der Tab geschlossen wird.

  • callback

    Funktion optional

    Der Parameter callback sieht so aus:

    ()=>void

Rückgaben

  • Promise<void>

    Promise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks werden jedoch aus Gründen der Abwärtskompatibilität bereitgestellt. Sie können nicht beide in einem Funktionsaufruf verwenden. Das Promise wird mit demselben Typ aufgelöst, der an den Callback übergeben wird.

setTitle()

Versprechen
chrome.action.setTitle(
  details: object,
  callback?: function,
)

Legt den Titel der Aktion fest. Dies wird in der Kurzinfo angezeigt.

Parameter

  • Details

    Objekt

    • tabId

      Nummer optional

      Begrenzt die Änderung auf die Auswahl eines bestimmten Tabs. Wird automatisch zurückgesetzt, wenn der Tab geschlossen wird.

    • Titel

      String

      Die Zeichenfolge, die angezeigt werden soll, wenn die Maus darüber bewegt wird.

  • callback

    Funktion optional

    Der Parameter callback sieht so aus:

    ()=>void

Rückgaben

  • Promise<void>

    Promise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks werden jedoch aus Gründen der Abwärtskompatibilität bereitgestellt. Sie können nicht beide in einem Funktionsaufruf verwenden. Das Promise wird mit demselben Typ aufgelöst, der an den Callback übergeben wird.

Veranstaltungen

onClicked

chrome.action.onClicked.addListener(
  callback: function,
)

Wird ausgelöst, wenn auf ein Aktionssymbol geklickt wird Dieses Ereignis wird nicht ausgelöst, wenn die Aktion ein Pop-up enthält.

Parameter

  • callback

    Funktion

    Der Parameter callback sieht so aus:

    (tab: tabs.Tab)=>void