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