首页 > 解决方案 > 在其自身之后克隆节点(不在任何地方......)

问题描述

Duplicate DIV onclick()我得到这个代码https://codepen.io/paulroub/pen/bxgIe

然后我为我修改requeriment(将任何节点克隆到文档中):

<div id="repeatTHIS">
<button class="button" onclick="clonarid('repeatTHIS');">text</button>
</div>
<hr />
<a href="#" onclick="clonarid('clonarh');">Clone "hello!"</a>
<div id="clonarh">Hello!</div>
<hr />
more tags/info here...

<script>
var i = 0;
function clonarid(elid){
    var original = document.getElementById(elid);
    var clone = original.cloneNode(true);
    clone.id = elid + ++ i;
    original.parentNode.appendChild(clone);
    }
</script>

但这曾经将“新节点”放在文档的末尾,而不仅仅是在每个“id”之后,我需要添加哪一行?

谢谢

标签: javascriptclone

解决方案


original.parentNode.appendChild会将孩子放在末尾parentNode这可能不会放在后面original。改为使用insertAdjacentElement

original.insertAdjacentElement('afterend', clone);

推荐阅读