除了Firefox扩展中的叠加外,还添加了一个对话框XUL

时间:2011-11-29 02:23:42

标签: dialog firefox-addon xul

我正在尝试使用XUL将对话框添加到已经定义了覆盖xul的Firefox扩展中。我尝试在同一个overlay.xul文件中添加对话框代码,但在错误控制台中遇到“dialog.getButton不是函数”错误。该文件的结构如下所示:

<overlay id="xxx" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
... code...
<dialog id="yyy" 
   buttons=","
   onload="onLoad();">
   ....
 </dialog>
 </overlay>

如果我将对话框xul代码分成不同的文件,那么一切似乎都有效。不同之处在于,在单独的dialog.xul文件中,对话框代码如下所示:

<dialog id=yyy" 
   xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
   buttons=","
   onload="onLoad();">
   ...
</dialog>

在同一个覆盖XUL文件中添加对话框代码是否可能或正确,还是我应该将它们分开?是否可以为同一个扩展名提供多个XUL文件?

1 个答案:

答案 0 :(得分:1)

  

在同一个覆盖XUL文件中添加对话框代码是否可能或正确

没有

  

我应该将它们分开吗?

  

同一个扩展名有多个XUL文件可以吗?

您可以根据需要在扩展程序中包含尽可能多的XUL文件。每个XUL文档都应该在一个单独的文件中 - 因为文档的根标记很重要。叠加层应以<overlay>作为其根标记,对话框需要使用根标记<dialog>和常规窗口<window>