我想将一个 DIV 元素移到另一个内部。例如,我想移动这个(包括所有孩子):
<div id="source">
...
</div>
进入这个:
<div id="destination">
...
</div>
所以我有这个:
<div id="destination">
<div id="source">
...
</div>
</div>
我想将一个 DIV 元素移到另一个内部。例如,我想移动这个(包括所有孩子):
<div id="source">
...
</div>
进入这个:
<div id="destination">
...
</div>
所以我有这个:
<div id="destination">
<div id="source">
...
</div>
</div>
我的解决方案:
移动:
jQuery("#NodesToMove").detach().appendTo('#DestinationContainerNode')
复制:
jQuery("#NodesToMove").appendTo('#DestinationContainerNode')
注意 .detach() 的用法。复制时,请注意不要复制 ID。
怎么样一个JavaScript的解决方案吗?
// Declare a fragment:
var fragment = document.createDocumentFragment();
// Append desired element to the fragment:
fragment.appendChild(document.getElementById('source'));
// Append fragment to desired element:
document.getElementById('destination').appendChild(fragment);
曾经尝试过普通的 JavaScript...destination.appendChild(source);
吗?
onclick = function(){ destination.appendChild(source); }
div{ margin: .1em; }
#destination{ border: solid 1px red; }
#source {border: solid 1px gray; }
<!DOCTYPE html>
<html>
<body>
<div id="destination">
###
</div>
<div id="source">
***
</div>
</body>
</html>