Substituir páginas do Chrome

As extensões podem usar páginas de substituição de HTML para substituir uma página que o Google Chrome normalmente fornece. Uma extensão pode conter uma substituição para qualquer uma das seguintes páginas, mas cada extensão só pode substituir uma página:

Gerenciador de favoritos
A página que aparece quando o usuário escolhe o item de menu "Gerenciador de favoritos" no menu do Chrome ou, no Mac, o item "Gerenciador de favoritos" no menu "Favoritos". Também é possível acessar essa página digitando o URL chrome://bookmarks.
Histórico
A página que aparece quando o usuário escolhe o item do menu "Histórico" no menu do Chrome ou, no Mac, o item "Mostrar histórico completo" no menu "Histórico". Também é possível acessar essa página digitando o URL chrome://history.
Nova guia
A página que aparece quando o usuário cria uma nova guia ou janela. Também é possível acessar essa página digitando o URL chrome://newtab.

As capturas de tela a seguir mostram a página "Nova guia" padrão e uma personalizada.

A página nova guia padrão
A página "Nova guia" padrão.
Uma página "Nova guia" personalizada
Uma página "Nova guia" personalizada.

Para testar isso, consulte nossos exemplos de substituição.

Comportamento da janela anônima

Nas janelas anônimas, as extensões não podem substituir as páginas da nova guia. Outras páginas ainda funcionam se a propriedade do manifesto anônimo estiver definida como "spanning" (o valor padrão). Para saber como lidar com janelas anônimas, consulte Como salvar dados e o modo de navegação anônima.

Manifesto

Use o código abaixo para registrar uma página de substituição no manifesto da extensão:

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

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

Para PAGE_TO_OVERRIDE, substitua por um dos seguintes:

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

Práticas recomendadas

  • Deixe a página rápida e pequena.
    Os usuários esperam que as páginas integradas do navegador sejam abertas instantaneamente. Evite fazer coisas que podem levar muito tempo. Especifique que o acesso aos recursos do banco de dados não pode ser síncrono. Ao fazer solicitações de rede, prefira fetch() em vez de XMLHttpRequest().

  • Para evitar confusões, dê um título à sua página.
    Sem um título, o título da página será o URL. Especifique o título usando a tag <title> no arquivo HTML.

  • Lembre-se de que as novas guias dão foco ao campo de endereço primeiro.
    Não dependa do foco do teclado por padrão em outras partes da página.

  • Personalize a página "Nova guia".
    Evite criar uma página de nova guia que os usuários possam confundir com a página de nova guia padrão do Chrome.

Exemplos

Consulte os exemplos de substituição.