Javascript 从firefox中的现有页面打开窗口时出现安全错误

Javascript 从firefox中的现有页面打开窗口时出现安全错误,javascript,firefox,firefox-addon,Javascript,Firefox,Firefox Addon,我正在开发一个Firefox扩展。在网页的客户端,我添加了一个链接,单击该链接,我打算打开一个窗口,允许用户输入文本。当我点击链接时,它会打开窗口,但不允许我写入 e、 g。 ww.document.write(“”) 这里它给了我一个错误: 错误:未捕获异常:[异常…”“安全错误”代码:“1000”nsresult:“0x805303e8(NS\u错误\u DOM\u安全错误)”位置:chrome://googbar/content/googbar.js 行:272“] 我使用以下命令打开窗口

我正在开发一个Firefox扩展。在网页的客户端,我添加了一个链接,单击该链接,我打算打开一个窗口,允许用户输入文本。当我点击链接时,它会打开窗口,但不允许我写入

e、 g。
ww.document.write(“”)
这里它给了我一个错误:

错误:未捕获异常:[异常…”“安全错误”代码:“1000”nsresult:“0x805303e8(NS\u错误\u DOM\u安全错误)”位置:chrome://googbar/content/googbar.js 行:272“]

我使用以下命令打开窗口:

var ww = Components.classes[
    "@mozilla.org/embedcomp/window-watcher;1"].getService(Components.interfaces.nsIWindowWatcher);
var wm =Components.classes["@mozilla.org/appshell/window-mediator;1"]

calWindow = ww.openWindow(null,'calendarWindow',null, 'left =500, top = 190, width = 230, height = 220,titlebar = no', null); 

打开的窗口不是空窗口,它包含父窗口的内容。例如,我从wikipedia打开此窗口,打开的新窗口中包含wiki页面。

我不完全清楚是什么原因造成的,但MDC上的这些信息表明,这可能受到Firefox 3.0中的更改的影响,以加强某些安全问题

虽然不是一个完整的答案,但这可能会让你走上解决问题的正确道路。如果没有,请提供有关您尝试执行的操作的更多详细信息。

1)“的第二个参数是URL。”“日历窗口”不是。A建议通过“”可以神奇地生成document.write,我没有检查

2) 我会尝试设置
document.body.innerHTML
,而不是使用
document.write()
。我认为
document.write()
是一个糟糕的API,它应该为了兼容性而继续存在


3) 无论如何,在你的情况下,我不明白为什么你需要打开一个完整的浏览器窗口来放置一些简单的HTML。创建一个XUL对话框,将其放入扩展并打开(使用
window.open('chrome://....“,”,“chrome”)
)。它的打开速度也快得多。

使用我的扩展,我尝试添加一个链接,单击该链接可以打开一个窗口,用户可以在该窗口中键入将保存在SQLite中的文本。所以这就像允许用户在网页上注释一样。我甚至尝试了window.open,我想它也会做同样的事情,但它会给我同样的错误。我所说的这个链接被添加到客户端的网页上(不是作为工具栏)。