Beschreibung
Mit der chrome.action
API können Sie das Symbol der Erweiterung in der Google Chrome-Symbolleiste steuern.
Verfügbarkeit
Manifest
Die folgenden Schlüssel müssen im Manifest deklariert werden, damit diese API verwendet werden kann.
"action"
Wenn Sie die chrome.action
API verwenden möchten, geben Sie einen "manifest_version"
von 3
an und fügen Sie den Schlüssel "action"
in Ihre 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. Andernfalls wird die Erweiterung in der Symbolleiste angezeigt, um Zugriff auf das Menü der Erweiterung zu erhalten. Aus diesem Grund empfehlen wir, immer mindestens die Schlüssel "action"
und "default_icon"
anzugeben.
Konzepte und Verwendung
Teile der Benutzeroberfläche
Symbol
Das Symbol ist das Hauptbild in der Symbolleiste für deine Erweiterung und wird durch den "default_icon"
-Schlüssel im "action"
-Schlüssel deines Manifests festgelegt. Symbole müssen 16 geräteunabhängige Pixel (DIPs) breit und hoch sein.
Der Schlüssel "default_icon"
ist ein Wörterbuch der Größen für Bildpfade. Chrome verwendet diese Symbole,
um die Bildgröße auszuwählen. Wenn keine genaue Übereinstimmung gefunden wird, wählt Chrome die am besten passende Option aus und skaliert sie für das Bild. Dies kann die Bildqualität beeinträchtigen.
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 Ihre Symbole anzugeben. Dadurch wird Ihre Erweiterung auch auf mögliche Änderungen der Symbolanzeigegröße vorbereitet. Wenn Sie jedoch nur eine einzige Größe angeben, kann der Schlüssel "default_icon"
auch auf einen String mit dem Pfad zu einem einzelnen Symbol anstelle eines Wörterbuchs gesetzt werden.
Sie können action.setIcon()
auch aufrufen, um das Symbol Ihrer Erweiterung programmatisch festzulegen. Geben Sie dazu einen anderen Bildpfad an oder verwenden Sie ein dynamisch generiertes Symbol mit dem HTML-Canvas-Element oder, wenn Sie die Einstellung über einen Erweiterungs-Dienstworker vornehmen, die Offscreen Canvas API.
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 angezeigt werden können, darunter PNG, JPEG, BMP und ICO. SVG wird nicht unterstützt. Für entpackte Erweiterungen müssen PNG-Bilder verwendet werden.
Kurzinfo (Titel)
Die Kurzinfo bzw. der Titel wird angezeigt, wenn der Nutzer den Mauszeiger auf das Symbol der Erweiterung in der Symbolleiste bewegt. Er wird auch in den barrierefreien Text aufgenommen, der von Screenreadern vorgelesen wird, wenn die Schaltfläche den Fokus erhält.
Die Standard-Kurzinfo 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
Aktionen können optional ein „Badge“ anzeigen – ein Text, der über das Symbol gelegt wird. Auf diese Weise können Sie die Aktion so aktualisieren, dass eine kleine Menge Informationen zum Status der Erweiterung angezeigt wird, z. B. ein Zähler. Das Logo hat eine Textkomponente und eine Hintergrundfarbe. Da der Platz begrenzt ist, empfehlen wir, maximal vier Zeichen zu verwenden.
Wenn du ein Badge erstellen möchtest, setze es programmgesteuert, indem du action.setBadgeBackgroundColor()
und action.setBadgeText()
aufrufst. Im Manifest gibt es keine Standardeinstellung für das Badge. Die Farbwerte für das Logo können entweder ein Array aus vier Ganzzahlen zwischen 0 und 255 sein, die die RGBA-Farbe des Logos bilden, 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
() => { /* ... */ },
);
Pop-up
Das Pop-up einer Aktion wird angezeigt, wenn der Nutzer in der Symbolleiste auf die Aktionsschaltfläche der Erweiterung klickt. Das Pop-up kann beliebigen HTML-Inhalt enthalten und wird automatisch an den Inhalt angepasst. Die Größe des Pop-ups muss zwischen 25 × 25 und 800 × 600 Pixel liegen.
Das Pop-up wird zuerst durch das Attribut "default_popup"
im Schlüssel "action"
in der Datei manifest.json
festgelegt. Falls dieses Attribut vorhanden ist, sollte es auf einen relativen Pfad innerhalb des Erweiterungsverzeichnisses verweisen. Er kann auch dynamisch mit der Methode action.setPopup()
aktualisiert werden, sodass er auf einen anderen relativen Pfad verweist.
Anwendungsfälle
Status pro Tab
Erweiterungsaktionen können für jeden Tab einen anderen Status haben. Mit dem Attribut tabId
in den Einstellungsmethoden der action
API kannst du einen Wert für einen einzelnen Tab festlegen. Wenn du beispielsweise den Logotext für einen bestimmten Tab festlegen möchtest, kannst du Folgendes tun:
function getTabId() { /* ... */}
function getTabBadge() { /* ... */}
chrome.action.setBadgeText(
{
text: getTabBadge(tabId),
tabId: getTabId(),
},
() => { ... }
);
Wenn die Property tabId
weggelassen wird, wird die Einstellung als globale Einstellung behandelt. Tabspezifische Einstellungen haben Vorrang vor globalen Einstellungen.
Aktiviert
Standardmäßig sind Symbolleistenaktionen auf jedem Tab aktiviert (anklickbar). Das lässt sich 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 die Erweiterung gesendet wird. Es hat keinen Einfluss auf die Anzeige der Aktion in der Symbolleiste.
Beispiele
Die folgenden Beispiele zeigen einige gängige Verwendungsmöglichkeiten von Aktionen in Erweiterungen. Wenn Sie diese API ausprobieren möchten, installieren Sie das Beispiel für die Action API aus dem Repository chrome-extension-samples.
Pop-up anzeigen
Häufig wird in einer Erweiterung ein Pop-up angezeigt, 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 von Chrome im Pop-up 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 einfügen
Erweiterungen werden häufig nach dem Muster dargestellt, dass ihre Hauptfunktion über die Aktion der Erweiterung verfügbar gemacht wird. Das folgende Beispiel veranschaulicht dieses Muster. Wenn der Nutzer auf die Aktion klickt, fügt die Erweiterung ein Inhaltsskript in die aktuelle Seite ein. Das Inhaltsskript zeigt dann eine Benachrichtigung an, um zu bestätigen, dass alles wie erwartet funktioniert hat.
// 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 deklarativeContent 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
Attribute
-
windowId
Zahl optional
Die ID des Fensters, in dem das Aktions-Pop-up geöffnet werden soll. Wenn keine Angabe gemacht wird, wird standardmäßig das derzeit aktive Fenster verwendet.
TabDetails
Attribute
-
tabId
Zahl optional
Die ID des Tabs, für den der Status abgefragt werden soll. Wenn kein Tab angegeben ist, wird der nicht tabspezifische Status zurückgegeben.
UserSettings
Die Sammlung der vom Nutzer angegebenen Einstellungen im Zusammenhang mit der Aktion einer Erweiterung.
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).
UserSettingsChange
Attribute
-
isOnToolbar
boolescher Wert optional
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()
chrome.action.disable(
tabId?: number,
callback?: function,
)
Deaktiviert die Aktion für einen Tab.
Parameter
-
tabId
number optional
Die ID des Tabs, für den Sie die Aktion ändern möchten.
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:() => void
Gibt Folgendes zurück:
-
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 demselben Funktionsaufruf verwenden. Das Versprechen wird mit demselben Typ aufgelöst, der an den Rückruf übergeben wird.
enable()
chrome.action.enable(
tabId?: number,
callback?: function,
)
Aktiviert die Aktion für einen Tab. Aktionen sind standardmäßig aktiviert.
Parameter
-
tabId
number optional
Die ID des Tabs, für den Sie die Aktion ändern möchten.
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:() => void
Gibt Folgendes zurück:
-
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 demselben Funktionsaufruf verwenden. Das Versprechen wird mit demselben Typ aufgelöst, der an den Rückruf übergeben wird.
getBadgeBackgroundColor()
chrome.action.getBadgeBackgroundColor(
details: TabDetails,
callback?: function,
)
Die Hintergrundfarbe der Aktion.
Parameter
-
Details
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:(result: ColorArray) => void
-
Ergebnis
-
Gibt Folgendes zurück:
-
Promise<browserAction.ColorArray>
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 demselben Funktionsaufruf verwenden. Das Versprechen wird mit demselben Typ aufgelöst, der an den Rückruf übergeben wird.
getBadgeText()
chrome.action.getBadgeText(
details: TabDetails,
callback?: function,
)
Ruft den Badge-Text der Aktion ab. Wenn kein Tab angegeben wird, wird der nicht tabulatorspezifische Logotext zurückgegeben. Wenn displayActionCountAsBadgeText aktiviert ist, wird ein Platzhaltertext zurückgegeben, es sei denn, die Berechtigung declarativeNetRequestFeedback ist vorhanden oder es wurde ein tabspezifischer Badge-Text angegeben.
Parameter
-
Details
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:(result: string) => void
-
Ergebnis
String
-
Gibt Folgendes zurück:
-
Promise<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 demselben Funktionsaufruf verwenden. Das Versprechen wird mit demselben Typ aufgelöst, der an den Rückruf übergeben wird.
getBadgeTextColor()
chrome.action.getBadgeTextColor(
details: TabDetails,
callback?: function,
)
Die Textfarbe der Aktion.
Parameter
-
Details
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:(result: ColorArray) => void
-
Ergebnis
-
Gibt Folgendes zurück:
-
Promise<browserAction.ColorArray>
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 demselben Funktionsaufruf verwenden. Das Versprechen wird mit demselben Typ aufgelöst, der an den Rückruf übergeben wird.
getPopup()
chrome.action.getPopup(
details: TabDetails,
callback?: function,
)
Das HTML-Dokument, das als Pop-up für diese Aktion festgelegt ist.
Parameter
-
Details
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:(result: string) => void
-
Ergebnis
String
-
Gibt Folgendes zurück:
-
Promise<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 demselben Funktionsaufruf verwenden. Das Versprechen wird mit demselben Typ aufgelöst, der an den Rückruf übergeben wird.
getTitle()
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
-
Gibt Folgendes zurück:
-
Promise<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 demselben Funktionsaufruf verwenden. Das Versprechen wird mit demselben Typ aufgelöst, der an den Rückruf übergeben wird.
getUserSettings()
chrome.action.getUserSettings(
callback?: function,
)
Gibt die vom Nutzer angegebenen Einstellungen für die Aktion einer Erweiterung zurück.
Parameter
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:(userSettings: UserSettings) => void
-
userSettings
-
Gibt Folgendes zurück:
-
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 demselben Funktionsaufruf verwenden. Das Versprechen wird mit demselben Typ aufgelöst, der an den Rückruf übergeben wird.
isEnabled()
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). Aktionen, die nur mit declarativeContent
aktiviert werden, geben immer „false“ zurück.
Parameter
-
tabId
number optional
Die ID des Tabs, für den Sie den aktivierten Status prüfen möchten.
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:(isEnabled: boolean) => void
-
isEnabled
boolean
„True“, wenn die Erweiterungsaktion aktiviert ist.
-
Gibt Folgendes zurück:
-
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 demselben Funktionsaufruf verwenden. Das Versprechen wird mit demselben Typ aufgelöst, der an den Rückruf übergeben wird.
openPopup()
chrome.action.openPopup(
options?: OpenPopupOptions,
callback?: function,
)
Öffnet das Pop-up der Erweiterung. Zwischen Chrome 118 und Chrome 126 ist dies nur für per Richtlinie installierte Erweiterungen verfügbar.
Parameter
-
Optionen
OpenPopupOptions optional
Hier werden Optionen zum Öffnen des Pop-ups angegeben.
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:() => void
Gibt Folgendes zurück:
-
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 demselben Funktionsaufruf verwenden. Das Versprechen wird mit demselben Typ aufgelöst, der an den Rückruf übergeben wird.
setBadgeBackgroundColor()
chrome.action.setBadgeBackgroundColor(
details: object,
callback?: function,
)
Legt die Hintergrundfarbe des Logos fest.
Parameter
-
Details
Objekt
-
Farbe
String | ColorArray
Ein Array mit vier Ganzzahlen im Bereich [0,255], die die RGBA-Farbe des Logos bilden. Opaque Red (Deckendes Rot) ist beispielsweise
[255, 0, 0, 255]
. Kann auch ein String mit einem CSS-Wert sein, wobei#FF0000
oder#F00
opakrot ist. -
tabId
number optional
Die Änderung wird nur angewendet, wenn ein bestimmter Tab ausgewählt ist. Wird beim Schließen des Tabs automatisch zurückgesetzt.
-
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:() => void
Gibt Folgendes zurück:
-
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 demselben Funktionsaufruf verwenden. Das Versprechen wird mit demselben Typ aufgelöst, der an den Rückruf übergeben wird.
setBadgeText()
chrome.action.setBadgeText(
details: object,
callback?: function,
)
Legt den Badge-Text für die Aktion fest. Das Badge wird über dem Symbol angezeigt.
Parameter
-
Details
Objekt
-
tabId
number optional
Beschränkt die Änderung auf das Auswählen eines bestimmten Tabs. Wird beim Schließen des Tabs automatisch zurückgesetzt.
-
Text
String optional
Es kann eine beliebige Anzahl von Zeichen übergeben werden, aber nur etwa vier können in den Bereich passen. Wenn ein leerer String (
''
) übergeben wird, wird der Badge-Text gelöscht. WenntabId
angegeben ist undtext
null ist, wird der Text für den angegebenen Tab gelöscht und der globale Badge-Text wird standardmäßig verwendet.
-
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:() => void
Gibt Folgendes zurück:
-
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 demselben Funktionsaufruf verwenden. Das Versprechen wird mit demselben Typ aufgelöst, der an den Rückruf übergeben wird.
setBadgeTextColor()
chrome.action.setBadgeTextColor(
details: object,
callback?: function,
)
Hiermit wird die Textfarbe für das Logo festgelegt.
Parameter
-
Details
Objekt
-
Farbe
String | ColorArray
Ein Array mit vier Ganzzahlen im Bereich [0,255], die die RGBA-Farbe des Logos bilden. Zum Beispiel ist undurchsichtiges Rot
[255, 0, 0, 255]
. Kann auch ein String mit einem CSS-Wert sein, wobei#FF0000
oder#F00
opakrot ist. Wenn Sie diesen Wert nicht festlegen, wird automatisch eine Farbe ausgewählt, die im Kontrast zur Hintergrundfarbe des Logos steht und der Text sichtbar ist. Farben mit einem Alphawert von 0 werden nicht festgelegt und es wird ein Fehler zurückgegeben. -
tabId
number optional
Die Änderung wird nur angewendet, wenn ein bestimmter Tab ausgewählt ist. Wird beim Schließen des Tabs automatisch zurückgesetzt.
-
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:() => void
Gibt Folgendes zurück:
-
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 demselben Funktionsaufruf verwenden. Das Versprechen wird mit demselben Typ aufgelöst, der an den Rückruf übergeben wird.
setIcon()
chrome.action.setIcon(
details: object,
callback?: function,
)
Legt das Symbol für die Aktion fest. Das Symbol kann entweder als Pfad zu einer Bilddatei oder als Pixeldaten eines Canvas-Elements oder als Wörterbuch von einem dieser Elemente angegeben werden. Es muss entweder die Property path oder imageData angegeben werden.
Parameter
-
Details
Objekt
-
imageData
ImageData | object 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 verwendete Bild je nach Pixeldichte des Bildschirms ausgewählt. Wenn die Anzahl der Bildpixel, die in eine Bildschirmeinheit passen,
scale
entspricht, wird das Bild mit der Größescale
* n ausgewählt, wobei n die Größe des Symbols in der Benutzeroberfläche ist. Es muss mindestens ein Bild angegeben werden. 'details.imageData = foo' entspricht 'details.imageData = {'16': foo}'. -
Pfad
string | object optional
Entweder ein relativer Bildpfad oder ein Dictionary {size -> relative image path}, das auf das Symbol verweist, das festgelegt werden soll. Wenn das Symbol als Wörterbuch angegeben ist, wird das tatsächlich verwendete Bild je nach Pixeldichte des Bildschirms ausgewählt. Wenn die Anzahl der Bildpixel, die in eine Bildschirmgröße passen,
scale
entspricht, wird ein Bild mit der Größescale
× n ausgewählt, wobei n die Größe des Symbols auf der Benutzeroberfläche ist. Es muss mindestens ein Bild angegeben werden. 'details.path = foo' entspricht 'details.path = {'16': foo}. -
tabId
number optional
Die Änderung wird nur angewendet, wenn ein bestimmter Tab ausgewählt ist. Wird beim Schließen des Tabs automatisch zurückgesetzt.
-
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:() => void
Gibt Folgendes zurück:
-
Promise<void>
Chrome 96 und höherPromise-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 demselben Funktionsaufruf verwenden. Das Versprechen wird mit demselben Typ aufgelöst, der an den Rückruf übergeben wird.
setPopup()
chrome.action.setPopup(
details: object,
callback?: function,
)
Hiermit wird festgelegt, dass das HTML-Dokument als Pop-up geöffnet wird, 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 angezeigt werden soll. Wenn der Wert auf einen leeren String festgelegt ist (
''
), wird kein Pop-up angezeigt. -
tabId
number optional
Die Änderung wird nur angewendet, wenn ein bestimmter Tab ausgewählt ist. Wird beim Schließen des Tabs automatisch zurückgesetzt.
-
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:() => void
Gibt Folgendes zurück:
-
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 demselben Funktionsaufruf verwenden. Das Versprechen wird mit demselben Typ aufgelöst, der an den Rückruf übergeben wird.
setTitle()
chrome.action.setTitle(
details: object,
callback?: function,
)
Legt den Titel der Aktion fest. Dieser wird in der Kurzinfo angezeigt.
Parameter
-
Details
Objekt
-
tabId
number optional
Die Änderung wird nur angewendet, wenn ein bestimmter Tab ausgewählt ist. Wird automatisch zurückgesetzt, wenn der Tab geschlossen wird.
-
Titel
String
Zeichenfolge, die die Aktion anzeigen soll, wenn der Mauszeiger darüber bewegt wird.
-
-
callback
Funktion optional
Der Parameter
callback
sieht so aus:() => void
Gibt Folgendes zurück:
-
Promise<void>
Versprechen werden in Manifest V3 und höher unterstützt, aber Callbacks werden aus Gründen der Abwärtskompatibilität bereitgestellt. Sie können nicht beide für denselben Funktionsaufruf verwenden. Das Promise wird mit demselben Typ aufgelöst, der an das Callback übergeben wird.
Ereignisse
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 hat.
Parameter
-
callback
Funktion
Der Parameter
callback
sieht so aus:(tab: tabs.Tab) => void
-
Tabulatortaste
-
onUserSettingsChanged
chrome.action.onUserSettingsChanged.addListener(
callback: function,
)
Wird ausgelöst, wenn benutzerdefinierte Einstellungen für die Aktion einer Erweiterung geändert werden.
Parameter
-
callback
Funktion
Der Parameter
callback
sieht so aus:(change: UserSettingsChange) => void
-
Ändern
-