1

我正在使用 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!?

4

1 回答 1

1

显式调用 Worker 的destroy方法,SDK 会处理内容脚本

于 2012-12-03T13:53:55.307 回答