Firefox插件SDK – 将样式表附加到触发错误的选项卡

我正在尝试在选项卡加载时向选项卡添加内容脚本,但我的代码正在抛出

TypeError:window.QueryInterface不是函数’

当我运行attachTo方法时.

var attachTo = require('sdk/content/mod').attachTo;
var style = require('sdk/stylesheet/style');

tabs.on('ready', function(tab) {
    var worker = tab.attach({
        contentScriptFile: ['./content.js']
    });
    var s = style.Style({
        uri: './style.css'
    });
    attachTo(s, tabs.activeTab.window); <------------ causes the error
    array.add(pageWorkers, worker);
    mainListener(worker);
});

有任何想法吗?

最佳答案 错误消息表明attachTo需要一个XPCOM对象. activeTab.window返回本机窗口周围的包装器对象. sdk的高级API通常处理隐藏大部分内部的javascript包装器对象.

您可以使用modelForviewFor进行转换.

点赞