Injeção de Javascript na guia recém-criada na extensão do Chrome
Estou tentando fazer uma extensão do chrome que cria uma nova guia com um 'blanksite.html' local e injeta algum código javascript, tornando-o verde. Aqui está o que eu tenho até agora.
background.js
chrome.browserAction.onClicked.addListener(function(activeTab){
chrome.tabs.create({'url': chrome.extension.getURL("blanksite.html") }, function(tab) {
chrome.tabs.executeScript(tab.id, {
code: 'document.body.style.backgroundColor="green"'
});
});
});
manifest.json
{
"manifest_version": 2,
"name": "Open Green Google Tab",
"description": "This extension opens a Green Google tab.",
"version": "1.0",
"background":{
"scripts": ["background.js"]
},
"browser_action": {
"default_icon": "icon.png"
},
"permissions": [
"tabs",
"activeTab"
]
}
Isso abre "blanksite.html" (literalmente um arquivo html vazio) em uma nova guia, mas não a torna verde.
Eu li as outras respostas emExtensão do Chrome: crie uma guia e injete um script de conteúdo, então eu sei por que isso não funciona (não é possível injetar código diretamente no chrome: // extension pages); mas não consegui fazer com que as soluções postadas nas outras respostas funcionassem para mim. Existe um pedaço pequeno e claro de código pequeno que possa fazer o que eu quero fazer funcionar?
Receio não entender muito bem as mensagens; portanto, para qualquer solução que possua isso como um todo, uma explicação mais abrangente seria muito apreciada.