Para abrir uma página web, você pode usar o módulo tabs
:
var tabs = require("sdk/tabs");
tabs.open("http://www.example.com");
Esta função é assíncrona, então você não recebe imediatamente um objeto tab
que você possa examinar. Faça isto, passe uma função de retorno para open()
. A função de retorno é atribuída a propriedade onReady
, e será passada a tab como argumento:
var tabs = require("sdk/tabs");
tabs.open({
url: "http://www.example.com",
onReady: function onReady(tab) {
console.log(tab.title);
}
});
Mesmo assim, você não consegue acesso direto a qualquer conteúdo hospedado na tab.
Para acessar conteúdo da tab você precisa anexar um script à tab usando o tab.attach()
. Este add-on carrega uma página, então anexa um script à página que adiciona uma borda vermelha nela:
var tabs = require("sdk/tabs");
tabs.open({
url: "http://www.example.com",
onReady: runScript
});
function runScript(tab) {
tab.attach({
contentScript: "document.body.style.border = '5px solid red';"
});
}
Aprendendo Mais
Para aprender mais sobre uso de tabs no SDK, veja a referência da API tabs
.
Para aprender mais sobre execução de scripts em tabs, veja o tutorial sobre uso de tab.attach()
.