这是关于Firefox扩展:
我有一个XUL浏览器覆盖图,其中包含我的所有javascripts。最终,javascript函数会触发xul页面的加载。此页面包含一个按钮,此按钮由触发页面加载的相同javascript操作(即动态设置按钮的oncommand属性,以便它将执行另一个javascript函数)。
问题是,当点击按钮时,它会给我错误。 我的javascript对象(命名空间,函数等)没有定义。但我不能在xul页面中再次包含所有Javascripts,因为我需要某种形式的全局对象。
即使我将按钮设置为与我自己的代码无关的简单命令(即gBrowser.loadURI(...)),也表示gBrowser未定义。
如何使用此按钮调用我的javascript函数?
答案 0 :(得分:1)
// Access JavaScript from multiple XUL files
将gBrowser更改为Services.wm.getMostRecentWindow('navigator:browser')。gBrowser
另一种选择是在加载时创建一个JSM文件,然后将addEventListener添加到此页面。创建一个JSM文件。请参见示例here on gists.github