NodeList更改不会影响长度

时间:2014-01-07 19:52:10

标签: javascript html nodes

我创建了一个带有nodeList = document.createDocumentFragment().childNodes;

的NodeList

然后我设置了nodeList[0] = document.getElementById("foo");

一切正常,唯一的问题是nodeList.length保持0

我已经尝试将数组更改为NodeList。此外,我试图使用一个片段,追加儿童并在之后更改它们并返回子节点。

我不能只追加原来的孩子,因为他们会被删除。

我错过了什么?

是的,我知道我可以使用一个数组,但我想要NodeList元素

1 个答案:

答案 0 :(得分:1)

我不确定重复是如何工作的所以我会在这里添加答案

文档https://developer.mozilla.org/en-US/docs/Web/API/DocumentFragment?redirectlocale=en-US&redirectslug=DOM%2FDocumentFragment中的

DocumentFragment将子属性设置为只读,因此您无法写入,而是使用appendChild();

var nodeList = document.createDocumentFragment();
nodeList.appendChild(document.getElementById("foo"))