在对象尚不可用的阶段,在 Firefox 引导插件中window
,我想创建一个元素作为模板保存(当时不插入)。
我想知道这是否可能?
可以createElement()
在除 a 之外的任何其他地方创建window.document
吗?
在对象尚不可用的阶段,在 Firefox 引导插件中window
,我想创建一个元素作为模板保存(当时不插入)。
我想知道这是否可能?
可以createElement()
在除 a 之外的任何其他地方创建window.document
吗?
我个人将我的东西放在一个 XML 文件(实际上是一个 XUL 文件)中,并使用 XHR 来解析它(.responseXML
)。DOMParser
via是另一种选择(尽管在nsIDOMParser
启动期间同步文件 I/O 不是一个好主意,UX 方面...)
如果你想要一个空白文档,IIRC (?!) 你可以使用nsIDocumentLoaderFactory.createBlankDocument
.
然后你可以.cloneNode(true)
/.importNode
从预解析的DOM 进入(浏览器)窗口。
你可以做Services.appShell.hiddenDOMWindow.document.createElement
但是在浏览器启动时,您必须添加一个事件侦听器来侦听何时hiddenDOMWindow
加载。
但是我很确定这样做createElement
的开销是一样的,对吗?createElement
所以你只需要在需要插入的时候创建元素,显然会有一个窗口。