Firefox扩展:打开动态扩展本地页面

时间:2014-01-11 09:24:01

标签: javascript firefox-addon firefox-addon-sdk

在我的扩展程序中(使用附加SDK),我想在选项卡中打开扩展本地网页(例如,data/templates/page.html)。该页面应该能够调用SDK方法。也就是说,我想操作保存在本地存储中的一些数据,然后显示它们。

换句话说,我想要一个行为类似于面板的标签。

我可以使用tabs模块和attach一个contentScript到页面(虽然它会是一个相当长的脚本)吗?

在导航工具栏中按下按钮时,将打开选项卡:

btn.addEventListener("click", 
    function(e) {
        //open tab here
    });

如何打开这样的页面?

1 个答案:

答案 0 :(得分:3)

这并不难,很多扩展都在这样做:

const tabs = require('sdk/tabs');
const { data} = require('sdk/self');

tabs.open({
  url: data.url('yourpage.html'),
  onReady: function onReady(tab) {
    tab.attach({
      contentScriptFile: data.url('yourcontentscript.js')
    });
  }
});

您可以在MDN上的tabs documentation找到所需的所有信息。