refresh date: 2026-09-25 robots: noindex
Descrizione
Utilizza le azioni del browser per inserire icone nella barra degli strumenti principale di Google Chrome, a destra della barra degli indirizzi. Oltre alla sua icona, un'azione del browser può avere una tooltip, un badge e un popup.
Disponibilità
Nella figura seguente, il quadrato multicolore a destra della barra degli indirizzi è l'icona di un'azione del browser. Sotto l'icona è presente un popup.

Se vuoi creare un'icona che non sia sempre attiva, utilizza un'azione di pagina anziché un'azione del browser.
Manifest
Registra l'azione del browser nel manifesto dell'estensione in questo modo:
{
"name": "My extension",
...
"browser_action": {
"default_icon": { // optional
"16": "images/icon16.png", // optional
"24": "images/icon24.png", // optional
"32": "images/icon32.png" // optional
},
"default_title": "Google Mail", // optional, shown in tooltip
"default_popup": "popup.html" // optional
},
...
}
Puoi fornire un'icona di qualsiasi dimensione da utilizzare in Chrome, che selezionerà quella più vicina e la ridimensionerà in modo che riempia lo spazio di 16 dip. Tuttavia, se non viene fornita la dimensione esatta, questo ridimensionamento può causare la perdita di dettagli o un aspetto sfocato dell'icona.
Poiché i dispositivi con fattori di scalabilità meno comuni, come 1,5x o 1,2x, stanno diventando più comuni, ti consigliamo di fornire più dimensioni per le tue icone. In questo modo, se le dimensioni di visualizzazione dell'icona vengono modificate, non dovrai fare altro per fornire icone diverse.
La vecchia sintassi per la registrazione dell'icona predefinita è ancora supportata:
{
"name": "My extension",
...
"browser_action": {
...
"default_icon": "images/icon32.png" // optional
// equivalent to "default_icon": { "32": "images/icon32.png" }
},
...
}
Parti della UI
Un'azione del browser può avere un'icona, un tooltip, un badge e un popup.
Icona
Le icone delle azioni del browser in Chrome hanno una larghezza e un'altezza di 16 dip (pixel indipendenti dal dispositivo). Le icone più grandi vengono ridimensionate per adattarsi, ma per risultati ottimali utilizza un'icona quadrata di 16 dip.
Puoi impostare l'icona in due modi: utilizzando un'immagine statica o l'elemento canvas HTML5. L'utilizzo di immagini statiche è più semplice per le applicazioni semplici, ma puoi creare UI più dinamiche, come animazioni fluide, utilizzando l'elemento canvas.
Le immagini statiche possono essere in qualsiasi formato visualizzabile da WebKit, inclusi BMP, GIF, ICO, JPEG o PNG. Per le estensioni non pacchettizzate, le immagini devono essere in formato PNG.
Per impostare l'icona, utilizza il campo default_icon di browser_action nel manifest o chiama il metodo browserAction.setIcon.
Per visualizzare correttamente l'icona quando la densità di pixel dello schermo (rapporto size_in_pixel / size_in_dip) è diversa da 1, l'icona può essere definita come un insieme di immagini con dimensioni diverse. L'immagine effettiva da visualizzare verrà selezionata dal set per adattarsi al meglio alle dimensioni in pixel di 16 dip. Il set di icone può contenere specifiche di icone di qualsiasi dimensione e Chrome selezionerà quella più appropriata.
Tooltip
Per impostare il tooltip, utilizza il campo default_title di browser_action nel manifest o chiama il metodo browserAction.setTitle. Puoi specificare stringhe specifiche per le impostazioni internazionali per il campo default_title; per maggiori dettagli, consulta Internazionalizzazione.
Badge
Le azioni del browser possono facoltativamente mostrare un badge, ovvero un testo sovrapposto all'icona. I badge semplificano l'aggiornamento dell'azione del browser per visualizzare una piccola quantità di informazioni sullo stato dell'estensione.
Poiché lo spazio del badge è limitato, deve contenere al massimo 4 caratteri.
Imposta il testo e il colore del badge utilizzando rispettivamente browserAction.setBadgeText e
browserAction.setBadgeBackgroundColor.
Popup
Se un'azione del browser ha un popup, questo viene visualizzato quando l'utente fa clic sull'icona dell'estensione. Il popup può contenere qualsiasi contenuto HTML e viene ridimensionato automaticamente in base ai contenuti. Il popup non può essere inferiore a 25 x 25 e non può essere superiore a 800 x 600.
Per aggiungere un popup all'azione del browser, crea un file HTML con i contenuti del popup. Specifica il file HTML nel campo default_popup di browser_action nel manifest o chiama il metodo browserAction.setPopup.
Suggerimenti
Per un impatto visivo ottimale, segui queste linee guida:
- Utilizza le azioni del browser per le funzionalità che hanno senso sulla maggior parte delle pagine.
- Non utilizzare le azioni del browser per funzionalità che hanno senso solo per alcune pagine. Utilizza invece le azioni sulla pagina.
- Utilizza icone grandi e colorate che sfruttano al meglio lo spazio di 16 x 16 dip. Le icone delle azioni del browser dovrebbero sembrare un po' più grandi e pesanti rispetto alle icone delle azioni della pagina.
- Non cercare di imitare l'icona del menu monocromatico di Google Chrome. Questo non funziona bene con i temi e, in ogni caso, le estensioni dovrebbero risaltare un po'.
- Sì: utilizza la trasparenza alfa per aggiungere bordi sfumati all'icona. Poiché molte persone utilizzano i temi, l'icona deve avere un bell'aspetto su una varietà di colori di sfondo.
- Non animare costantemente l'icona. È davvero fastidioso.
Esempi
Puoi trovare semplici esempi di utilizzo delle azioni del browser nella directory examples/api/browserAction. Per altri esempi e per assistenza nella visualizzazione del codice sorgente, consulta Esempi.
Tipi
TabDetails
Proprietà
-
tabId
number optional
L'ID della scheda per cui eseguire la query sullo stato. Se non viene specificata alcuna scheda, viene restituito lo stato non specifico della scheda.
Metodi
disable()
chrome.browserAction.disable(
tabId?: number,
callback?: function,
): Promise<void>
Disattiva l'azione del browser per una scheda.
Parametri
-
tabId
number optional
L'ID della scheda per cui modificare l'azione del browser.
-
callback
funzione elemento facoltativo
Chrome 67 e versioni successiveIl parametro
callbackha il seguente aspetto:() => void
Resi
-
Promise<void>
Chrome 88 e versioni successiveLe promise sono supportate solo per Manifest V3 e versioni successive, mentre le altre piattaforme devono utilizzare i callback.
enable()
chrome.browserAction.enable(
tabId?: number,
callback?: function,
): Promise<void>
Attiva l'azione del browser per una scheda. L'impostazione predefinita è abilitata.
Parametri
-
tabId
number optional
L'ID della scheda per cui modificare l'azione del browser.
-
callback
funzione elemento facoltativo
Chrome 67 e versioni successiveIl parametro
callbackha il seguente aspetto:() => void
Resi
-
Promise<void>
Chrome 88 e versioni successiveLe promise sono supportate solo per Manifest V3 e versioni successive, mentre le altre piattaforme devono utilizzare i callback.
getBadgeBackgroundColor()
chrome.browserAction.getBadgeBackgroundColor(
details: TabDetails,
callback?: function,
): Promise<extensionTypes.ColorArray>
Recupera il colore di sfondo dell'azione del browser.
Parametri
-
dettagli
-
callback
funzione elemento facoltativo
Il parametro
callbackha il seguente aspetto:(result: ColorArray) => void
-
risultato
-
Resi
-
Promise<extensionTypes.ColorArray>
Chrome 88 e versioni successiveLe promise sono supportate solo per Manifest V3 e versioni successive, mentre le altre piattaforme devono utilizzare i callback.
getBadgeText()
chrome.browserAction.getBadgeText(
details: TabDetails,
callback?: function,
): Promise<string>
Recupera il testo del badge dell'azione del browser. Se non viene specificata alcuna scheda, viene restituito il testo del badge non specifico della scheda.
Parametri
-
dettagli
-
callback
funzione elemento facoltativo
Il parametro
callbackha il seguente aspetto:(result: string) => void
-
risultato
stringa
-
Resi
-
Promise<string>
Chrome 88 e versioni successiveLe promise sono supportate solo per Manifest V3 e versioni successive, mentre le altre piattaforme devono utilizzare i callback.
getPopup()
chrome.browserAction.getPopup(
details: TabDetails,
callback?: function,
): Promise<string>
Recupera il documento HTML impostato come popup per questa azione del browser.
Parametri
-
dettagli
-
callback
funzione elemento facoltativo
Il parametro
callbackha il seguente aspetto:(result: string) => void
-
risultato
stringa
-
Resi
-
Promise<string>
Chrome 88 e versioni successiveLe promise sono supportate solo per Manifest V3 e versioni successive, mentre le altre piattaforme devono utilizzare i callback.
getTitle()
chrome.browserAction.getTitle(
details: TabDetails,
callback?: function,
): Promise<string>
Recupera il titolo dell'azione del browser.
Parametri
-
dettagli
-
callback
funzione elemento facoltativo
Il parametro
callbackha il seguente aspetto:(result: string) => void
-
risultato
stringa
-
Resi
-
Promise<string>
Chrome 88 e versioni successiveLe promise sono supportate solo per Manifest V3 e versioni successive, mentre le altre piattaforme devono utilizzare i callback.
setBadgeBackgroundColor()
chrome.browserAction.setBadgeBackgroundColor(
details: object,
callback?: function,
): Promise<void>
Imposta il colore di sfondo del badge.
Parametri
-
dettagli
oggetto
-
colore
string | ColorArray
Un array di quattro numeri interi compresi tra 0 e 255 che compongono il colore RGBA del badge. Può anche essere una stringa con un valore di colore esadecimale CSS, ad esempio
#FF0000o#F00(rosso). Visualizza i colori con opacità massima. -
tabId
number optional
Limita la modifica a quando viene selezionata una determinata scheda. Viene reimpostata automaticamente quando la scheda viene chiusa.
-
-
callback
funzione elemento facoltativo
Chrome 67 e versioni successiveIl parametro
callbackha il seguente aspetto:() => void
Resi
-
Promise<void>
Chrome 88 e versioni successiveLe promise sono supportate solo per Manifest V3 e versioni successive, mentre le altre piattaforme devono utilizzare i callback.
setBadgeText()
chrome.browserAction.setBadgeText(
details: object,
callback?: function,
): Promise<void>
Imposta il testo del badge per l'azione del browser. Il badge viene visualizzato sopra l'icona.
Parametri
-
dettagli
oggetto
-
tabId
number optional
Limita la modifica a quando viene selezionata una determinata scheda. Viene reimpostata automaticamente quando la scheda viene chiusa.
-
testo
stringa facoltativa
È possibile passare un numero qualsiasi di caratteri, ma solo circa quattro possono essere inseriti nello spazio. Se viene passata una stringa vuota (
''), il testo del badge viene cancellato. Se viene specificatotabIdetextè null, il testo della scheda specificata viene cancellato e viene utilizzato il testo del badge globale per impostazione predefinita.
-
-
callback
funzione elemento facoltativo
Chrome 67 e versioni successiveIl parametro
callbackha il seguente aspetto:() => void
Resi
-
Promise<void>
Chrome 88 e versioni successiveLe promise sono supportate solo per Manifest V3 e versioni successive, mentre le altre piattaforme devono utilizzare i callback.
setIcon()
chrome.browserAction.setIcon(
details: object,
callback?: function,
): Promise<void>
Imposta l'icona per l'azione del browser. L'icona può essere specificata come percorso di un file immagine, come dati dei pixel di un elemento canvas o come dizionario di uno di questi elementi. È necessario specificare la proprietà path o imageData.
Parametri
-
dettagli
oggetto
-
imageData
ImageData | oggetto facoltativo
Un oggetto ImageData o un dizionario {size -> ImageData} che rappresenta un'icona da impostare. Se l'icona è specificata come dizionario, l'immagine utilizzata viene scelta in base alla densità dei pixel dello schermo. Se il numero di pixel immagine che rientrano in un'unità di spazio sullo schermo è pari a
scale, viene selezionata un'immagine con dimensioniscale* n, dove n è la dimensione dell'icona nella UI. È necessario specificare almeno un'immagine. Tieni presente che "details.imageData = foo" equivale a "details.imageData = {'16': foo}" -
percorso
string | object facoltativo
Un percorso relativo dell'immagine o un dizionario {size -> relative image path} che rimanda a un'icona da impostare. Se l'icona è specificata come dizionario, l'immagine utilizzata viene scelta in base alla densità dei pixel dello schermo. Se il numero di pixel immagine che rientrano in un'unità di spazio sullo schermo è pari a
scale, viene selezionata un'immagine con dimensioniscale* n, dove n è la dimensione dell'icona nella UI. È necessario specificare almeno un'immagine. Tieni presente che "details.path = foo" equivale a "details.path = {'16': foo}" -
tabId
number optional
Limita la modifica a quando viene selezionata una determinata scheda. Viene reimpostata automaticamente quando la scheda viene chiusa.
-
-
callback
funzione elemento facoltativo
Il parametro
callbackha il seguente aspetto:() => void
Resi
-
Promise<void>
Chrome 116 e versioni successiveLe promise sono supportate solo per Manifest V3 e versioni successive, mentre le altre piattaforme devono utilizzare i callback.
setPopup()
chrome.browserAction.setPopup(
details: object,
callback?: function,
): Promise<void>
Imposta il documento HTML da aprire come popup quando l'utente fa clic sull'icona dell'azione del browser.
Parametri
-
dettagli
oggetto
-
popup
stringa
Il percorso relativo del file HTML da mostrare in un popup. Se viene impostato su una stringa vuota (
''), non viene mostrato alcun popup. -
tabId
number optional
Limita la modifica a quando viene selezionata una determinata scheda. Viene reimpostata automaticamente quando la scheda viene chiusa.
-
-
callback
funzione elemento facoltativo
Chrome 67 e versioni successiveIl parametro
callbackha il seguente aspetto:() => void
Resi
-
Promise<void>
Chrome 88 e versioni successiveLe promise sono supportate solo per Manifest V3 e versioni successive, mentre le altre piattaforme devono utilizzare i callback.
setTitle()
chrome.browserAction.setTitle(
details: object,
callback?: function,
): Promise<void>
Imposta il titolo dell'azione del browser. Questo titolo viene visualizzato nel tooltip.
Parametri
-
dettagli
oggetto
-
tabId
number optional
Limita la modifica a quando viene selezionata una determinata scheda. Viene reimpostata automaticamente quando la scheda viene chiusa.
-
titolo
stringa
La stringa che l'azione del browser deve visualizzare quando il mouse viene posizionato sopra.
-
-
callback
funzione elemento facoltativo
Chrome 67 e versioni successiveIl parametro
callbackha il seguente aspetto:() => void
Resi
-
Promise<void>
Chrome 88 e versioni successiveLe promise sono supportate solo per Manifest V3 e versioni successive, mentre le altre piattaforme devono utilizzare i callback.
Eventi
onClicked
chrome.browserAction.onClicked.addListener(
callback: function,
)
Attivato quando si fa clic sull'icona di un'azione del browser. Non viene attivato se l'azione del browser ha un popup.