Viene visualizzato un menu contestuale per il clic alternativo (spesso chiamato clic con il tasto destro del mouse). Questa pagina descrive come implementare un menu contestuale. Per un elenco completo dei membri delle API correlate, consulta browser.contextMenu.
Per creare un menu contestuale, aggiungi prima l'autorizzazione "contextMenus" al file manifest.json.
manifest.json:
"permissions": [
"contextMenus"
],
(Facoltativo) Utilizza il tasto "icons" se vuoi mostrare un'icona accanto a una voce di menu. In questo esempio, la voce di menu per l'estensione "Ricerca Google globale" utilizza un'icona 16 x 16.
Il resto di questo esempio è tratto dall'esempio di menu contestuale della Ricerca Google globale, che fornisce più opzioni di menu contestuale. Quando un'estensione contiene più di un menu contestuale, Chrome li comprime automaticamente in un unico menu principale, come mostrato qui:
L'esempio mostra questo richiamando contextMenus.create() nel service worker dell'estensione. Le voci del sottomenu vengono importate dal file locales.js. Poi runtime.onInstalled li itera.
service-worker.js:
const tldLocales = {
'com.au': 'Australia',
'com.br': 'Brazil',
...
}
browser.runtime.onInstalled.addListener(async () => {
for (let [tld, locale] of Object.entries(tldLocales)) {
browser.contextMenus.create({
id: tld,
title: locale,
type: 'normal',
contexts: ['selection'],
});
}
});