javascript - 修改 HTML 的 "tree"对象?

标签 javascript jquery html css

假设我有一个像这样的简单结构:

<div id="A"> 
    <div id="B"> 
        <div id="C"> </div>
    </div>
</div>
<div id="X"> </div>

例如,是否有可能以某种方式(javascript、css、jQuery)更改 C 的位置并使其成为 X 的子级?描述这种情况的术语是什么?

最佳答案

这是可能的。如果你不想依赖任何库,你可以这样做:

document.getElementById('X').appendChild(document.getElementById('C'));

这里的技巧是 HTML 元素最多可以存在于树中的一个位置,但 DOM 会为我们处理这个。因为你告诉它让 C 成为 X 的 child ,但 C 已经是 B 的 child ,DOM 知道让 C 不再是 B 的 child 。这一切都作为一个 Action 处理,所以页面只有回流一次,这对性能有好处。

关于javascript - 修改 HTML 的 "tree"对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27793022/

相关文章:

javascript - 从服务器获取 react 后我收到空对象

javascript - "Priority Nav"在 div float 时中断

jquery - 我如何单击加载 html 页面的链接,然后使用 ajax(不单击任何内容)加载外部 html 页面?

javascript - Flex table - 如何同步单元格高度

javascript - 使用 javascript 将不同选择的选项存储到数组中

目录表中的 PHP HTML 图像

javascript - Dojox/mobile/scrollableview 滚动问题

javascript - Vue.js(vuex)。重新加载页面时,计算属性返回未定义。 (vuex 中硬编码的对象数据数组)

php - 如何每隔一分钟将当前值加2?

javascript - 如何将所选选项动态附加到 div 并在所选选项更改时更新?