在JSM中访问window对象

时间:2010-12-03 02:02:21

标签: javascript xpcom

我正在创建一个firefox扩展。我想在JSM文件中获得对窗口对象的引用 然后使用

导入该文件
Components.utils.import("resource://js/my_module.jsm");

在my_module.jsm中有这一行:

var jQenv = window.content.document;

抛出错误,“窗口未定义”

如何访问JSM文件中的窗口对象?

2 个答案:

答案 0 :(得分:5)

要访问所需的窗口对象see this documentation

答案 1 :(得分:-1)

以下是我的插件中的一些代码,Power Bookmarks:

gBrowser.contentDocument.documentElement.getElementsByTagName("body")[0].innerHTML+="<div id=\"powerbookmarks.div\" style=\"background-color: black; padding-left: 2px; z-index: 9999; opacity: 0.8; width: 100% !important; position: fixed; bottom: 0px; left: 0px; height: 45px !important; color: white !important;\">Content removed to keep it short</div>";

这将使您可以访问当前的body元素,而gBrowser.contentDocument可能是.documentElement是实际文档的窗口。

您可以点击Chrome&gt;来查看上下文中的代码:https://addons.mozilla.org/en-US/firefox/files/browse/92549内容&gt; overlay.js中

我希望这会有所帮助