编程语言
首页 > 编程语言> > javascript – Firefox插件:新标签扩展程序

javascript – Firefox插件:新标签扩展程序

作者:互联网

当Firefox中的新选项卡打开时,我需要执行一些操作.我正在使用addon-sdk而且我对firefox扩展开发完全不熟悉.

我在商店中下载了一些新的标签扩展,解压缩它们并且大多数都使用这样的代码:

var newtab = {
    init: function ()
    {
        gBrowser.addEventListener("NewTab", newtab.opentab, false);
    },

    opentab: function (aEvent)
    {
        // action here
    }
}

window.addEventListener( "load", newtab.init, false);

他们正在订阅窗口的加载事件,然后他们保证有gBrowser订阅新的选项卡打开事件.

当我试图这样做时,我得到:

Message: ReferenceError: window is not defined

据我所知,在这种情况下没有窗口对象.

Firefox Addon-sdk. On page load

StackOverflow – Firefos Addon: eventlistener: windows is not defined

根据sdk和SO的回答,它可以用描述的方式,我的扩展和从商店下载的扩展(以及上面的主题)之间的唯一区别,我没有任何xul文件,因为我没有任何UI.

我也尝试使用SO答案Firefox Add-On window.addEventListener error: window not defined中的代码,但Firefox崩溃了.

怎么做正确的方法?如果我没有UI,我应该有任何xul文件吗?

解决方法:

你引用的Thar代码是常规的XUL覆盖代码,并不适用于SDK(好吧,它可以通过跳过很多箍来在SDK中工作,但这不是重点).

SDK提供了用于处理sdk/tabs模块中的选项卡的API.你应该使用它.

标签:javascript,javascript-events,firefox,firefox-addon,firefox-addon-sdk
来源: https://codeday.me/bug/20190612/1225151.html