Um pop-up é uma ação que mostra uma janela permitindo que os usuários invoquem vários recursos de extensão. Ela é acionada por um atalho de teclado ou clicando no ícone de ação da extensão. Os pop-ups são fechados automaticamente quando o usuário foca em alguma parte do navegador fora deles. Não há como manter o pop-up aberto depois que o usuário sair da página.
A imagem a seguir, tirada do exemplo Drink Water Event (em inglês), mostra um pop-up com as opções de timer disponíveis. Os usuários definem um alarme clicando em um dos botões.
![Exemplo de pop-up.](https://developer.chrome.com/static/docs/extensions/develop/ui/add-popup/image/popup.png?authuser=7&hl=pt)
Registre um pop-up no manifesto na chave "action"
.
{
"name": "Drink Water Event",
...
"action": {
"default_popup": "popup.html"
}
...
}
Implemente o pop-up da mesma forma que faria com qualquer outra página da Web. Qualquer JavaScript usado em um pop-up precisa estar em um arquivo separado.
<html>
<head>
<title>Water Popup</title>
</head>
<body>
<img src="./stay_hydrated.png" id="hydrateImage">
<button id="sampleSecond" value="0.1">Sample Second</button>
<button id="min15" value="15">15 Minutes</button>
<button id="min30" value="30">30 Minutes</button>
<button id="cancelAlarm">Cancel Alarm</button>
<script src="popup.js"></script>
</body>
</html>
Também é possível criar pop-ups dinamicamente chamando action.setPopup()
.
chrome.storage.local.get('signed_in', (data) => {
if (data.signed_in) {
chrome.action.setPopup({popup: 'popup.html'});
} else {
chrome.action.setPopup({popup: 'popup_sign_in.html'});
}
});