如何在firefox和chrome中检测首次加载NPAPI插件/扩展

时间:2013-08-23 03:50:31

标签: google-chrome firefox npapi

我想检测首次加载NPAPI插件/扩展程序。 我应该在扩展/插件中处理哪个事件。

1 个答案:

答案 0 :(得分:0)

我找到了解决方案。

我的要求是我想在浏览器启动时通知NPAPI插件。我有我的扩展和NPAPI插件。

Chrome解决方案:

对于chrome background_helper.js,只有在新的chrome实例启动时才加载一次。它不会在新页面或新窗口上重新加载。

Firefox解决方案: 在Firefox上window.load在新窗口打开时被调用,所以我在window.load事件处理程序中添加了代码,如下所示。

var Application = Components.classes["@mozilla.org/fuel/application;1"].getService(Components.interfaces.fuelIApplication);

var myExt= {
  onLoad: function() {
    var windowsArray = Application.windows;
    if(windowsArray.length == 1 && gBrowser.browsers.length == 1)
    {
       alert('FireFox started');
    }
  },
};

window.addEventListener('load', myExt.onLoad, false);

这里gBrowser是golbal对象gBrowser.browsers.length将给出标签计数。