mozilla addon sdk 1.11 - page-mod cleanup

时间:2012-11-29 23:56:36

标签: mozilla firefox-addon-sdk

我正在使用page-mod将内容脚本附加到所有打开的标签页!

在创建时刻/事件之后,我想从所有打开的标签中删除所有附加的内容脚本!

我该怎么做? ....使用已经sdk 1.11

myPanel.port.on('userlogged', function(rdata) {

    var workers= [];

            function detachWorker(worker, workerArray) {
                var index = workerArray.indexOf(worker);
                if(index != -1) {
                    workerArray.splice(index, 1);
                }
            }


            var pMod = pageMod.PageMod({
                include: "*",
                contentScriptWhen: "end",
                contentScriptFile: data.url("sas_tb.js"),
                attachTo: ["existing", "top", "frame"],
                onAttach: function(worker) {
                    workers.push(worker);
                    worker.on('detach', function () {
                        detachWorker(this, workers);
                    });

                    worker.port.emit('logged', rdata.logged);

                }
            });
});

因此,contentScriptFile将附加到浏览器中的所有打开的选项卡,但是如果我想......说我从我的插件注销,我如何从所有附加的选项卡/工作人员中删除contentScriptFile??

1 个答案:

答案 0 :(得分:1)

明确调用Worker的destroy方法,SDK将处理内容脚本