在JSM中获取window对象的访问权限

3

我正在创建一个火狐浏览器扩展。我想在JSM文件中获取窗口对象的引用。
然后使用以下方式导入该文件:

Components.utils.import("resource://js/my_module.jsm");

在 my_module.jsm 中有这一行代码:
var jQenv = window.content.document;

出现错误,提示“window未定义”。

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

2个回答

5

谢谢。我找到了如何在jsm中定义警报的内容。这就是我想要的,以便在jsm中定义窗口 :) - Alexis
好的,要能够执行警报,您可以使用nsIPromptService。 - sdwilsh

-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 > content > overlay.js在https://addons.mozilla.org/en-US/firefox/files/browse/92549上下文中查看代码。

希望这可以帮助到您。


1
在JSM文件中,gBrowser未定义。 - Alexis

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接