javascript - Firefox 47 - Application.activeWindow 在插件中不起作用

标签 javascript firefox firefox-addon

升级到 Firefox 47 后,Application.activeWindow 不再工作。

它崩溃于:

 var doc = Application.activeWindow.activeTab.document;  

知道为什么吗?自过去两年以来,该插件一直运行良好。如果它已被弃用(现在已被删除),如何在 XUL 插件中获取文档对象。

最佳答案

原因是

Application.activeWindow

在 Firefox 47 中不再起作用。而是

  • var doc = Application.activeWindow.activeTab.document;

我们也可以使用

    var chromeWindow = Services.wm.getMostRecentWindow('navigator:browser');
    var doc = chromeWindow.content.document; 

它做同样的工作。

因此,将 Application.activeWindow.activeTab.document 替换为 content.document 解决了该问题。

我可以在 Firefox 40 中找到上述内容的弃用警告页面

https://developer.mozilla.org/en-US/docs/Mozilla/Tech/Toolkit_API/FUEL/fuelIWindow

关于javascript - Firefox 47 - Application.activeWindow 在插件中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37785286/

相关文章:

javascript - 为什么在运行时单击图像时单击事件不起作用?

javascript - 收集复选框的值并使用所述值自动选中其他 div 中的复选框

python - Selenium:_wait_until_connectable 无限期暂停

javascript - 如何折叠 Firefox 中 JSON View 中的所有对象

html - WebKit 浏览器中动态加载元素中的文本选择

javascript - 如何取消设置 CSS 值?

javascript - 覆盖 localStorage 的点符号

javascript - setTimeout 何时开始在内联 <script> 中执行

javascript - compass/咖啡可以做到这一点吗?另一种方法?

firefox-addon - 如何在一个xul中使用多个dtd文件?