我正在开发一个Mozilla Add。我正在尝试打开一个标签。
根据https://addons.mozilla.org/en-US/developers/docs/sdk/1.0/packages/addon-kit/docs/tabs.html,使用
完成console.log("before tab");
var tabs = require("tabs");
tabs.open("http://www.example.com");
但它不能解决我的问题。
我在内容脚本中这样做。 我有一个名为popup.html的页面和一个名为popup_script.js的内容。
已到达代码,因为已记录消息。
有什么想法吗?
答案 0 :(得分:6)
内容脚本无权访问“高级”API,它们只能与扩展程序通信。因此,您的内容脚本应send a message to the extension,然后扩展程序应打开标签。像这样:
self.port.emit("openTab", "http://www.example.com");
在main.js
:
panel.port.on("openTab", function(url)
{
var tabs = require("tabs");
tabs.open(url);
});