Kontextmenü erstellen

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

manifest.json:

  "permissions": [
    "contextMenus"
  ],

Sie können auch die Taste "icons" verwenden, wenn neben einem Menüpunkt ein Symbol angezeigt werden soll. In diesem Beispiel ist der Menüpunkt für die globale Google-Suche ein Symbol im Format 16 x 16 verwendet.

<ph type="x-smartling-placeholder">
</ph> Ein Kontextmenüelement mit einem Symbol im Format 16 x 16.
Ein Kontextmenüelement mit einem Symbol im Format 16 x 16.

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

<ph type="x-smartling-placeholder">
</ph> Ein verschachteltes Kontextmenü.
Abbildung 4: Kontextmenü und verschachteltes Untermenü

Im Beispiel wird dies durch Aufrufen von contextMenus.create() im Erweiterungs-Service-Worker veranschaulicht. Untermenüelemente werden aus der Datei locales.js importiert. Anschließend wird in runtime.onInstalled durch sie iteriert.

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'],
    });
  }
});