javascript - 如何在 javascript 中交换 HTML 元素?

标签 javascript dom

我正在使用经典的 Javascript 编写 DOM 脚本,我在容器 DIV 中有一组 DIV。 在子 DIV 的点击事件中,我希望导致事件的子 DIV 与其上方的 DIV 交换。 我的代码放在这里..

 <div id="container">
        <div onclick="swapDiv(event);">1</div>
        <div onclick="swapDiv(event);">2</div>
        <div onclick="swapDiv(event);">3</div>
 </div>

如果 DIV 2 被点击,它应该与 DIV 1 交换

最佳答案

这段代码会做你想做的事(如果你想用第一个子元素交换选择)。如果您想要其他东西,则需要更加精确。

<script type="text/javascript">
  function swapDiv(event, elem) {
    elem.parentNode.insertBefore(elem, elem.parentNode.firstChild);
  }
</script>


<div id="container">
  <div onclick="swapDiv(event,this);">1</div>
  <div onclick="swapDiv(event,this);">2</div>
  <div onclick="swapDiv(event,this);">3</div>
</div>

关于javascript - 如何在 javascript 中交换 HTML 元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2943140/

相关文章:

javascript - 获取相对于父元素的点击范围

javascript - 有什么方法可以使用 document.createElement() 跟踪元素的创建吗?

javascript - 为什么单击和拖动会导致父元素成为 `event.target` ?

html - document.getElementByID - 检查是否找到元素

javascript - 负载第一师应该是开放的

javascript - 如何动态更改 anchor 标记链接?

javascript - Flot 库将 y 轴设置为最小 0 和最大 24

javascript - 新创建的 DOM 元素在哪里?

javascript - 不安全的 JavaScript 尝试访问框架...协议(protocol)必须匹配

javascript - 使用 OrbitControls 时如何在 Three.js 中禁用右键单击鼠标移动相机旋转?