11
我正在实现ECMA-357附录A中描述的所有可选E4X特性,并且在实现domNodeList(§A.1.2和§A.2.2)时遇到困难。我将如何创建我自己的NodeList对象?创建DOM节点列表
即使我创建了一个新的XMLDocument并在XMLList中附加了节点的每个domNode()表示,但我仍然没有看到如何创建一个包含所有内容的NodeList,因为注释和处理指令通常被排除。
我正在实现ECMA-357附录A中描述的所有可选E4X特性,并且在实现domNodeList(§A.1.2和§A.2.2)时遇到困难。我将如何创建我自己的NodeList对象?创建DOM节点列表
即使我创建了一个新的XMLDocument并在XMLList中附加了节点的每个domNode()表示,但我仍然没有看到如何创建一个包含所有内容的NodeList,因为注释和处理指令通常被排除。
我想到我可以使用文档片段的childNodes属性来创建NodeList。这是我的解决方案:
XML.prototype.function::domNodeList = function() {
var fragment = document.createDocumentFragment(),
len = this.length(),
i = 0;
for (; i < len; i++) {
fragment.appendChild(this[i].domNode());
}
return fragment.childNodes;
}
这会从dom中删除添加的节点 – Pancho 2014-11-13 13:01:33
这个问题的背景是什么?你在写什么? – 2009-11-21 21:15:59
瑞恩,你没有看到domNodeList?我也清楚地说明它在ECMA-357中的定义。 – 2009-11-21 21:35:59
为什么这是CW? – 2009-11-21 22:01:41