chrome.contextMenus (original) (raw)

Zum Hauptinhalt springen

chrome.contextMenus

Beschreibung

Mit der chrome.contextMenus API können Sie Elemente zum Kontextmenü von Google Chrome hinzufügen. Sie können auswählen, auf welche Arten von Objekten sich Ihre Kontextmenü-Ergänzungen beziehen, z. B. Bilder, Hyperlinks und Seiten.

Berechtigungen

contextMenus

Sie müssen die Berechtigung "contextMenus" im Manifest Ihrer Erweiterung deklarieren, um die API verwenden zu können. Außerdem sollten Sie ein 16 × 16 Pixel großes Symbol angeben, das neben Ihrem Menüelement angezeigt werden soll. Beispiel:

{
  "name": "My extension",
  ...
  "permissions": [
    "contextMenus"
  ],
  "icons": {
    "16": "icon-bitty.png",
    "48": "icon-small.png",
    "128": "icon-large.png"
  },
  ...
}

Konzepte und Verwendung

Kontextmenüelemente können in jedem Dokument (oder Frame in einem Dokument) angezeigt werden, auch in Dokumenten mit file://- oder chrome://-URLs. Wenn Sie festlegen möchten, in welchen Dokumenten Ihre Elemente angezeigt werden können, geben Sie das Feld documentUrlPatterns an, wenn Sie die Methoden create() oder update() aufrufen.

Sie können beliebig viele Kontextmenüelemente erstellen. Wenn jedoch mehr als eines Ihrer Erweiterung gleichzeitig sichtbar ist, werden sie in Google Chrome automatisch in einem einzelnen übergeordneten Menü zusammengefasst.

Beispiele

Wenn Sie diese API ausprobieren möchten, installieren Sie das API-Beispiel für contextMenus aus dem Repository chrome-extension-samples.

Typen

ContextType

Die verschiedenen Kontexte, in denen ein Menü angezeigt werden kann. Die Angabe von „all“ entspricht der Kombination aller anderen Kontexte mit Ausnahme von „launcher“. Der Kontext „Launcher“ wird nur von Apps unterstützt und dient dazu, dem Kontextmenü, das beim Klicken auf das App-Symbol im Launcher, in der Taskleiste, im Dock usw. angezeigt wird, Menüpunkte hinzuzufügen. Auf verschiedenen Plattformen gelten möglicherweise Einschränkungen für die Unterstützung in einem Launcher-Kontextmenü.

Enum

"all"

"page"

"frame"

„selection“

„link“

"editable"

"image"

"video"

"audio"

"launcher"

"browser_action"

"page_action"

"action"

CreateProperties

Eigenschaften des neuen Kontextmenüelements.

Attribute

ItemType

Der Typ des Menüpunkts.

Enum

"normal"

"checkbox"

"radio"

"separator"

OnClickData

Informationen, die gesendet werden, wenn auf ein Kontextmenüelement geklickt wird.

Attribute

Attribute

Die maximale Anzahl von Erweiterungselementen der obersten Ebene, die dem Kontextmenü einer Erweiterungsaktion hinzugefügt werden können. Alle Elemente darüber hinaus werden ignoriert.

Methoden

create()

chrome.contextMenus.create(
  createProperties: CreateProperties,
  callback?: function,
): number | string

Erstellt ein neues Kontextmenüelement. Wenn während der Erstellung ein Fehler auftritt, wird er möglicherweise erst erkannt, wenn der Erstellungs-Callback ausgelöst wird. Details finden Sie unter runtime.lastError.

Parameter

Ausgabe

remove()

chrome.contextMenus.remove(
  menuItemId: string | number,
): Promise

Entfernt ein Kontextmenüelement.

Parameter

Ausgabe

removeAll()

chrome.contextMenus.removeAll(): Promise

Entfernt alle Kontextmenüelemente, die von dieser Erweiterung hinzugefügt wurden.

Ausgabe

update()

chrome.contextMenus.update(
  id: string | number,
  updateProperties: object,
): Promise

Aktualisiert ein zuvor erstelltes Kontextmenüelement.

Parameter

Ausgabe

Ereignisse

onClicked

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

Wird ausgelöst, wenn auf ein Kontextmenüelement geklickt wird.

Parameter

Sofern nicht anders angegeben, sind die Inhalte dieser Seite unter der Creative Commons Attribution 4.0 License und Codebeispiele unter der Apache 2.0 License lizenziert. Weitere Informationen finden Sie in den Websiterichtlinien von Google Developers. Java ist eine eingetragene Marke von Oracle und/oder seinen Partnern.

Zuletzt aktualisiert: 2025-09-15 (UTC).