当我试图移动跨度

时间:2016-09-27 16:13:27

标签: javascript jquery css html5

我在一个地方有一个div,我想把它移到另外两个地方。我有两个父标签和我的spanEN移动的id。当我appendChild它只适用于parentHeader.appendChild(spanEN);

        var parentNav = document.getElementById('js-liveChatParentNav');
        var parentHeader = document.getElementById('js-liveChatParentHeader');

        var spanEN = document.getElementById("js-chat-sourceEN").childNodes[1];

        parentNav.appendChild(spanEN );
        parentHeader.appendChild(spanEN );

在控制台中我看到了这一点:一个是appendChild,另一个是dosen&#tt。

enter image description here

1 个答案:

答案 0 :(得分:3)

当您使用appendChild附加已经存在于DOM中的元素时,它移动,而不是克隆。如果您想克隆它,可以通过cloneNode

parentNav.appendChild(spanEN);
parentHeader.appendChild(spanEN.cloneNode(true));
// ----------------------------^^^^^^^^^^^^^^^^

true表示"克隆此节点其后代。"