学习本教程之前你需要学习
jpm
基础。打开一个新的网页,你可以使用 tabs
模块:
var tabs = require("sdk/tabs"); tabs.open({ "https://www.example.com");
这个函数是异步的,所以你不能立即获取一个可以检查的标签对象。要做到这一点,通过一个回调函数为open()。将回调函数赋值给 onready 属性,并将通过标签作为参数:
var tabs = require("sdk/tabs"); tabs.open({ url: "https://www.example.com", onReady: function onReady(tab) { console.log(tab.title); } });
尽管这样,你还是不能直接访问到标签页中的任何宿主内容(具体概念请查阅相关内容:JavaScript 本地对象、内置对象、宿主对象 )。
要访问标签页的内容,你需要使用 tab.attach()把一个脚本添加到该标签页。此add-on加载加载一个页面,然后将一个脚本附加到该页,该将向页面添加红色边框:
var tabs = require("sdk/tabs"); tabs.open({ url: "https://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()
.