Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将一个div从一个div内部移动到另一个div_Javascript_Jquery_Css - Fatal编程技术网

Javascript 将一个div从一个div内部移动到另一个div

Javascript 将一个div从一个div内部移动到另一个div,javascript,jquery,css,Javascript,Jquery,Css,如何将一个div的内容移动到另一个div的内容 我想移动。侧边栏从。发布到。旋转木马。如何使用javascript实现这一点 我想从这里开始: <div class="container"> <div class="carousel"> <div class="row"> <div class="post"> <div class="sidebar"></div> </div

如何将一个div的内容移动到另一个div的内容

我想移动。侧边栏从。发布到。旋转木马。如何使用javascript实现这一点

我想从这里开始:

<div class="container">
  <div class="carousel">
    <div class="row">
      <div class="post">
    <div class="sidebar"></div>
      </div>
</div>
  </div>
</div>

为此:

<div class="container">
  <div class="carousel">
    <div class="row">
      <div class="post"></div>
      <div class="sidebar"></div>
    </div>
  </div>
</div>

假设您只有一次这样的事件,您可以使用普通JavaScript:

var sidebar = document.getElementsByClassName('sidebar')[0];

// move after parent node
sidebar.parentNode.parentNode.appendChild(sidebar);

appendChild()
函数从现有元素在树中的上一个位置移动而不是复制它们。要执行复制,您需要首先克隆相应的元素。

假设您只有一个这样的事件,您可以使用纯JavaScript:

var sidebar = document.getElementsByClassName('sidebar')[0];

// move after parent node
sidebar.parentNode.parentNode.appendChild(sidebar);
document.getElementsByClassName('row')[0].appendChild(document.getElementsByClassName('sidebar')[0]);

appendChild()
函数从现有元素在树中的上一个位置移动而不是复制它们。要执行复制,您需要先克隆相应的元素。

我建议,如果该类中有多个元素(并且假设在所有情况下,这些元素都应该插入到它们的
父节点之后)

document.getElementsByClassName('row')[0].appendChild(document.getElementsByClassName('sidebar')[0]);

参考资料:


我建议,如果您在该类中有多个元素(并且假设在所有情况下,它们都应该插入到它们的
父节点
)之后,那么很可能:

参考资料:


尝试使用JQueryDraggable()和dropable()函数。 请看演示


尝试使用JQueryDraggable()和dropable()函数。 请看演示


你介意使用jQuery吗?@laaposto我不介意使用jQuery…你介意使用jQuery吗?@laaposto我不介意使用jQuery…第二行是不必要的:当第三行移动时,不需要清空
。post
。侧边栏。不过,对vanilla JS进行Upvote,因为我正要发布=)第二行是不必要的:当第三行移动时,不需要清空
.post
。不过,对于vanilla JS进行Upvote,因为我刚刚要发布=)这将比Dude发布的简单vanilla JS更方便,使用
侧栏类移动所有元素
@HenryBlyth该问题用jquery标记,因此您不妨使用它:)@HenryBlyth发现我没有正确阅读该问题;该节点应该在其父节点之后移动,而不是成为carousel的子节点:)这将比Dude发布的简单香草JS更方便,可以使用
侧栏类移动所有元素,所以你不妨使用它:)@HenryBlyth发现我没有正确地阅读这个问题;该节点应移到其父节点之后,而不是成为carousel:)的子节点。insertAfter(this.parentNode)是我需要的答案。非常感谢你!。insertAfter(this.parentNode)是我需要的答案。非常感谢你!