Eseguire l'override delle pagine di Chrome

Le estensioni possono utilizzare pagine di override HTML per sostituire una pagina normalmente fornita da Google Chrome. Un'estensione può contenere un'override per una delle seguenti pagine, ma ogni estensione può sostituire una sola pagina:

Bookmark Manager
La pagina visualizzata quando l'utente sceglie l'elemento di menu Gestisci preferiti dal menu di Chrome o, su Mac, l'elemento Gestisci preferiti dal menu Preferiti. Puoi anche accedere a questa pagina inserendo l'URL chrome://bookmarks.
Cronologia
La pagina visualizzata quando l'utente sceglie la voce di menu Cronologia dal menu di Chrome o, su Mac, la voce Mostra cronologia completa dal menu Cronologia. Puoi anche accedere a questa pagina inserendo l'URL chrome://history.
Nuova scheda
La pagina visualizzata quando l'utente crea una nuova scheda o finestra. Puoi anche accedere a questa pagina inserendo l'URL chrome://newtab.

Gli screenshot seguenti mostrano la pagina Nuova scheda predefinita e una pagina Nuova scheda personalizzata.

La pagina Nuova scheda predefinita
La pagina Nuova scheda predefinita.
Una pagina Nuova scheda personalizzata
Una pagina Nuova scheda personalizzata.

Per provare questa funzionalità, consulta i nostri esempi di override.

Comportamento della finestra di navigazione in incognito

Nelle finestre di navigazione in incognito, le estensioni non possono sostituire le pagine della nuova scheda. Le altre pagine continuano a funzionare se la proprietà manifest incognito è impostata su "spanning" (il valore predefinito). Per informazioni dettagliate su come gestire le finestre di navigazione in incognito, vedi Salvataggio dei dati e modalità di navigazione in incognito.

Manifest

Utilizza il seguente codice per registrare una pagina di override nel manifest dell'estensione:

{
  "manifest_version": 3,
  "name": "My extension",
  ...

  "chrome_url_overrides" : {
    "PAGE_TO_OVERRIDE": "myPage.html"
  },
  ...
}

Per PAGE_TO_OVERRIDE, sostituisci uno dei seguenti valori:

  • "bookmarks"
  • "history"
  • "newtab"

Best practice

  • Rendi la tua pagina veloce e di piccole dimensioni.
    Gli utenti si aspettano che le pagine del browser integrate si aprano immediatamente. Evita di fare cose che potrebbero richiedere molto tempo. In particolare, evita di accedere alle risorse del database in modo sincrono. Quando effettui richieste di rete, preferisci fetch() anziché XMLHttpRequest().

  • Per evitare confusione tra gli utenti, assegna un titolo alla pagina.
    Se non viene specificato un titolo, il titolo della pagina sarà l'URL per impostazione predefinita. Specifica il titolo utilizzando il tag <title> nel file HTML.

  • Ricorda che le nuove schede danno la priorità alla barra degli indirizzi per l'uso della tastiera.
    Non fare affidamento sul fatto che lo stato attivo della tastiera sia impostato per impostazione predefinita su altre parti della pagina.

  • Personalizza la pagina Nuova scheda.
    Evita di creare una pagina Nuova scheda che gli utenti potrebbero confondere con quella predefinita di Chrome.

Esempi

Consulta gli esempi di override.