如何移动 HTML 元素

Posted

技术标签:

【中文标题】如何移动 HTML 元素【英文标题】:How to move HTML element 【发布时间】:2011-03-22 10:00:40 【问题描述】:

如何将 html 元素移动到另一个元素。请注意,我不是指移动元素的位置。考虑以下 HTML 代码:

<div id="target"></div>
<span id="to_be_moved"></span>

我想将“to_be_moved”移动到“target”,所以“target”现在有了子“to_be_moved”。所以结果应该是这样的:

<div id="target"><span id="to_be_moved"></span></div>

我在谷歌搜索过(特别是使用原型框架),但我得到的只是移动位置,而不是我想要的。之前谢谢。

【问题讨论】:

【参考方案1】:
document.getElementById('target').appendChild(  document.getElementById('to_be_moved') )

【讨论】:

“to_be_moved”怎么样?它还在原来的地方吗? 嗯?元素的父元素会改变,所以它被“移动”了。该节点并没有被“移除”,因为它现在位于 DOM 树的其他位置。 "如果给定子节点是对文档中现有节点的引用,则 appendChild() 它从当前位置移动到新位置..." @987654321 @。知道组合相当于移动而不是复制很有用。它并不隐含在命名中。 node.cloneNode() 将...按照它所说的去做。【参考方案2】:

假设您使用的是原生 DOM 元素,javascript 方法 .appendChild 将满足您的需求。

在原生 Javascript 中,document.getElementByID 可能是获取 DOM 元素的最佳选择,所以...

var target = document.getElementById('target')
document.getElementById('to_be_moved').appendChild(target)

【讨论】:

以上是关于如何移动 HTML 元素的主要内容,如果未能解决你的问题,请参考以下文章

如何将 CSS 类移动到正确的 html 元素

如何使用 JavaScript 将所有 HTML 元素子元素移动到另一个父元素?

HTML5 Canvas元素绘制地图,如何实现显示鼠标所移动地方名称?

如何将元素移动到 DOM 中的下一个父元素?

如何使用 javascript 使 flash 元素移动友好?

调整textarea大小时,所有元素都向下移动:如何修复