javascript - "Cut and Paste"- 使用 Javascript 在 DOM 中移动节点

标签 javascript dom

我有大致如下所示的 html 代码:

<div id="id1">
  <div id="id2">
    <p>some html</p>
    <span>maybe some more</span>
  </div>
  <div id="id3">
    <p>different text here</p>
    <input type="text">
    <span>maybe even a form item</span>
  </div>
</div>

显然还有更多的东西,但这是基本的想法。我需要做的是交换#id2和#id3的位置,所以结果是:

<div id="id1">
  <div id="id3">...</div>
  <div id="id2">...</div>
</div>

有谁知道可以读写两个节点(及其所有子节点)以便交换它们在 DOM 中的位置的函数(我敢肯定我不是第一个需要此功能的人)?

最佳答案

在这种情况下,document.getElementById('id1').appendChild(document.getElementById('id2')); 应该可以解决问题。

更一般地,您可以使用 insertBefore() .

关于javascript - "Cut and Paste"- 使用 Javascript 在 DOM 中移动节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/324303/

相关文章:

javascript - jquery 脚本无法在 HTML 中运行

javascript - 在 Windows CE 上用 JScript 绘图

javascript - 有没有办法将这 2 个正则表达式模式合并为一个?

javascript - 将 Shadow DOM 与 polyfill、platform.js 和 webcomponents.js 结合使用

java - 从 org.w3c.dom.Node 获取 Xpath

javascript - 如何在另一个 .js 文件中使用 acorn.js?

javascript - 如何在新行中添加输入类型 "file"?

javascript - 通过javascript单击单个复选框时选择/取消选择所有复选框

javascript - DOM 有什么问题?

javascript - PHP 和 jQuery 插入 MySQL