Kontextmenü erstellen

Ein Kontextmenü für den alternativen Klick einer Maus (häufig als Rechtsklick bezeichnet) wird angezeigt. Fügen Sie der Datei „manifest.json“ zuerst die Berechtigung "contextMenus" hinzu, um ein Kontextmenü zu erstellen.

manifest.json:

  "permissions": [
    "contextMenus"
  ],

Verwenden Sie optional die Taste "icons", wenn neben einem Menüpunkt ein Symbol angezeigt werden soll. In diesem Beispiel wird im Menüpunkt der Erweiterung "Globale Google-Suche" das Symbol 16 x 16 verwendet.

Ein Kontextmenüeintrag mit einem Symbol im Format 16 x 16.
Ein Kontextmenüeintrag mit einem 16 x 16-Symbol.

Das restliche Beispiel stammt aus dem Beispiel für das Kontextmenü der globalen Google Suche, das mehrere Kontextmenüoptionen enthält. Wenn eine Erweiterung mehr als ein Kontextmenü enthält, werden diese von Chrome automatisch zu einem einzigen übergeordneten Menü minimiert, wie hier gezeigt:

Ein verschachteltes Kontextmenü.
Abbildung 4: Kontextmenü und verschachteltes Untermenü.

Das Beispiel zeigt dies durch Aufrufen von contextMenus.create() im Extension Service Worker. Untermenüelemente werden aus der Datei locales.js importiert. Dann durchläuft runtime.onInstalled sie.

service-worker.js:

const tldLocales = {
  'com.au': 'Australia',
  'com.br': 'Brazil',
  ...
}

chrome.runtime.onInstalled.addListener(async () => {
  for (let [tld, locale] of Object.entries(tldLocales)) {
    chrome.contextMenus.create({
      id: tld,
      title: locale,
      type: 'normal',
      contexts: ['selection'],
    });
  }
});