通过simple-prefs添加内容脚本

时间:2014-07-07 09:34:11

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

如果我在插件设置中选择此首选项,我会在页面上添加一个内容脚本。我可以添加bool设置,但我绝对无法理解如何在main.js文件中使用它。设置为

  "preferences": [{
        "description": "",
        "name": "tagHide",
        "type": "bool",
        "value": false,
        "title": "Hide something"}]

在主文件中我添加了这个

var data = require("sdk/self").data;
var pageMod = require("sdk/page-mod");
var prefs = require("sdk/simple-prefs").prefs;
function onPrefChange(prefName) {
    if (prefs.tagHide) {
        console.log(prefs.tagHide);
        pageMod.PageMod({
            include: "*.corbina.net",
            contentScriptFile: data.url("cutter.js")
        });
    };
}

此代码在控制台中记录“false”的“true”,但是pagemod似乎无效。我在这里遇到的任何错误?

1 个答案:

答案 0 :(得分:2)

此代码存在一些问题:

  • 您不会在此代码中的任何位置绑定onPrefChange,例如require("sdk/simple-prefs").on("", onPrefChange);,请参阅the docs
  • 您没有将page-mod应用于现有标签,请参阅文档here,特别是attachTo选项。
  • 即使您附加了page-mod,我也无法看到您卸载内容脚本的效果?
相关问题