Javascript 将html元素从一个节点移动到另一个节点

Javascript 将html元素从一个节点移动到另一个节点,javascript,html,Javascript,Html,我想把一个html元素从一个节点移动到另一个节点,但我不知道怎么做,当我一开始想到它时,它看起来很简单,但实际上有点难,我仍然认为这很愚蠢 以下是一个例子: <div class="container"> <h1>text</h1> <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut

我想把一个html元素从一个节点移动到另一个节点,但我不知道怎么做,当我一开始想到它时,它看起来很简单,但实际上有点难,我仍然认为这很愚蠢

以下是一个例子:

    <div class="container">
    <h1>text</h1>
    <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
    </div>

    <div class="con">

    </div>
<button> click ME </button>

文本
知识产权是一种权利,是一种精英的权利,是劳动和财富的暂时性权利。但是,在最低限度上,我们需要一个实验室来进行日常工作。两人或两人在一个无教区的房间里互相指责。除偶尔因疏忽而死亡外,不得因疏忽而导致动物死亡

点击我
我想将
.container
div
中的内容移动到
.co
div
我在google上搜索了很多,但没有找到任何有用的内容,我甚至在stackoverflow上搜索过,但我确实找到了解决方案

请帮忙,提前谢谢你

我看到但没有解决问题的问题:


您可以通过以下语法在html代码中使用类的链接来使用每个类:



但是,如果您没有类文件(file.css),首先您必须在文件class.css中编写css,然后在任何需要的地方使用该代码

以下是解决方案: HTML

<div id="parent1" class="container">
  <h1>text</h1>
  <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
</div>
<div id="parent2" class="con">

</div>

您需要找到一种方法从
.container
div中删除每个元素,然后将它们添加到
.con
div中。我将这样做:

// get all children of container
const containerChildren = document.querySelector('.container').children;
// turn them into an array and loop through them
Array.from(containerChildren)).forEach((el) => {
    // remove element
    el.remove();
    // select .con and add it to that div
    document.querySelector('.con').append(el);
});
您可以将其转换为函数,然后将其添加到按钮,如下所示:

function handleClick() {
    const containerChildren = document.querySelector('.container').children;
    Array.from(containerChildren)).forEach((el) => {
        el.remove();
        document.querySelector('.con').append(el);
    });
}
document.querySelector('button').onclick = handleClick;

一种简单的方法是:当
div.container
中至少有一个元素时,将其移动到
div.con
。an元素是
JavaScript
HTMLElement
对象
firstChild
属性,只要有第一个子元素,就将其移动到
div.con

这是一个演示,其中包含大量有用的评论:

/**选择主“div”和“按钮”**/
让container=document.querySelector('.container'),
con=document.querySelector('.con'),
btn=document.getElementById('move');
/**单击“按钮”的处理程序**/
move.addEventListener('click',e=>{
while(el=container.firstChild)con.appendChild(el);/**将子对象移动到另一个div,并保持它们在第一个“div”中的外观(位置)**/
});
/**区分两个主要元素(div)的一些样式**/
.货柜,
.con{
填充:15px;
边框:2倍实心透明;
利润率:15px0;
}
.集装箱{
边框颜色:蓝色;
}
.con{
边框颜色:红色;
}

移动元素
文本
知识产权是一种权利,是一种精英的权利,是劳动和财富的暂时性权利。但是,在最低限度上,我们需要一个实验室来进行日常工作。酒后驾车
这是一种不受欢迎的行为,它是一种不受欢迎的行为。除偶尔因疏忽而死亡外,不得因疏忽而导致动物死亡


搬家什么时候生效?在一个
按钮之后
单击“可能?”是的,为什么不呢我在你的代码中没有看到任何
按钮
,所以我问。我已经添加了一个。我想这个答案应该是你要找的
function handleClick() {
    const containerChildren = document.querySelector('.container').children;
    Array.from(containerChildren)).forEach((el) => {
        el.remove();
        document.querySelector('.con').append(el);
    });
}
document.querySelector('button').onclick = handleClick;