使用Javascript / jQuery将已存在的元素附加到DOM

时间:2015-12-16 18:19:13

标签: javascript jquery html dom

我的DOM中有一个带有两个子元素的元素,一个div块和一个按钮。当我单击按钮时,我想将相同div块的新副本添加到parentNode。这可能吗?我现在在按钮上点击的电话是:

document.getElementById("myele").appendChild(document.getElementById("myele").children[0])

但是这只是将子节点中的子节点移动到按钮下面,如果我再次单击,则将按钮移回div块下面(因为现在children [0]是按钮本身)。我还尝试将子节点分配给变量并将其追加,但结果是相同的。

有没有办法做我正在尝试做的事情,而不必调用重新创建整个div块然后追加它的JS函数?

编辑:从未使用过jQuery,我也试过这样做,但它似乎不起作用:

<script>
function addOne(){
    console.log('click')
    $('.valori:first-child').clone(true).appendTo($('.valori'))
}
</script>

并且onclick调用成为:

javascript: addOne()

控制台记录“点击”,但页面中没有任何更改。

1 个答案:

答案 0 :(得分:1)

假设我理解正确,cloneNode可能就是你想要的。

您可以克隆元素,然后将克隆附加到父节点。

https://developer.mozilla.org/en/docs/Web/API/Node/cloneNode