学习本教程之前你需要学习 jpm 基础

打开一个新的网页,你可以使用 tabs 模块:

var tabs = require("sdk/tabs");
tabs.open({
"http://www.example.com");

这个函数是异步的,所以你不能立即获取一个可以检查的标签对象。要做到这一点,通过一个回调函数为open()。将回调函数赋值给 onready 属性,并将通过标签作为参数:

var tabs = require("sdk/tabs");
tabs.open({
  url: "http://www.example.com",
  onReady: function onReady(tab) {
    console.log(tab.title);
  }
});

尽管这样,你还是不能直接访问到标签页中的任何宿主内容(具体概念请查阅相关内容:JavaScript 本地对象、内置对象、宿主对象 )。

要访问标签页的内容,你需要使用 tab.attach()把一个脚本添加到该标签页。此add-on加载加载一个页面,然后将一个脚本附加到该页,该将向页面添加红色边框:

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';"
  });
}

学习更多

要了解更多关于SDK中标签如何工作, 查看 tabs API reference.

要了解更多关于在标签中运行脚本, 查看 tutorial on using tab.attach().

文档标签和贡献者

 最后编辑者: zaobao,