Javascript将片段附加到现有HTML元素
我创建了一个DOM片段,在其中我在一个循环中添加了几个子节点:Javascript将片段附加到现有HTML元素,javascript,fragment,Javascript,Fragment,我创建了一个DOM片段,在其中我在一个循环中添加了几个子节点: fragment.appendChild( clone ) 我想获取这个片段,并用它替换已经包含这些节点的现有HTML元素 我可以用 myContainer.appendChild(fragment) 然而,这也是在循环中完成的,并且片段被附加了太多次。 如何获取片段,将其附加到myContainer,并删除myContainer的旧孩子 谢谢。循环完成后,您不能追加片段吗 至于删除当前的子节点,您可以在它们之间循环并使用rem
fragment.appendChild( clone )
我想获取这个片段,并用它替换已经包含这些节点的现有HTML元素
我可以用
myContainer.appendChild(fragment)
然而,这也是在循环中完成的,并且片段被附加了太多次。
如何获取片段,将其附加到myContainer,并删除myContainer的旧孩子
谢谢。循环完成后,您不能追加片段吗 至于删除当前的子节点,您可以在它们之间循环并使用removeChild函数,或者只需将元素的innerHTML设置为空字符串。如果在附加片段之前重置innerHTML,应该可以
myContainer.innerHTML = "";
myContainer.appendChild(fragment);
您可能想要:
while (myContainer.childNodes.length > 0) {
myContainer.removeChild(myContainer.childNodes[0]);
}
myContainer.appendChild(fragment);
如果我理解正确的话,您正在创建一个包含一些子节点的新节点,并且希望此新节点替换页面中的现有节点 您可以:
- 删除现有节点的所有子节点,并将新子节点添加到现有节点
- 将所有子节点添加到另一个节点(我想这就是您正在做的:添加到
),然后删除现有节点,并将节点添加到该位置片段
请参见和myContainer.replaceChild(片段,myolElement)仅适用于一个子元素。在片段和myoldement中,我有多个子节点。我正在寻找一种使用replaceChild()同时用其他元素替换多个children的方法。。。不仅仅是one@Mircea,你说你想要一个类似于
replaceChild
的东西,比如在数组上运行?恐怕没有。您必须在循环中调用它。是的,类似于replaceChild的东西不仅可以用于一个子项,还可以用于一组子项。