简体   繁体   English

删除DOM中的元素

[英]Remove elements in DOM

can some one show how to work with few elements in DOM and move them from one block to another, I need use jQuery, for example I have this structure 可以有人展示如何使用DOM中的少数元素并将它们从一个块移动到另一个块,我需要使用jQuery,例如我有这个结构

<div class="block">
    <div class="block_left">
        <div class="title">title 1</div>
        <div class="image">image 1 for title 1</div>
    </div>
    <div class="block_right">

    </div>
</div>

<div class="block">
    <div class="block_left">
        <div class="title">title 2</div>
        <div class="image">image 2 for title 2</div>
    </div>
    <div class="block_right">

    </div>
</div>

<div class="block">
    <div class="block_left">
        <div class="title">title 3</div>
        <div class="image">image 3 for title 3</div>
    </div>
    <div class="block_right">

    </div>
</div>

<div class="block">
    <div class="block_left">
        <div class="title">title 4</div>
        <div class="image">image 4 for title 4</div>
    </div>
    <div class="block_right">

    </div>
</div>

I was trying to use jQuery .each() but not that I need. 我试图使用jQuery .each()但不是我需要的。 In result I need this: 结果我需要这个:

<div class="block">
    <div class="block_left">
        <div class="title">title 1</div>
    </div>
    <div class="block_right">
        <div class="image">image 1 for title 1</div>
    </div>
</div>

<div class="block">
    <div class="block_left">
        <div class="title">title 2</div>
    </div>
    <div class="block_right">
        <div class="image">image 2 for title 2</div>
    </div>
</div>

<div class="block">
    <div class="block_left">
        <div class="title">title 3</div>
    </div>
    <div class="block_right">
        <div class="image">image 3 for title 3</div>
    </div>
</div>

<div class="block">
    <div class="block_left">
        <div class="title">title 4</div>
    </div>
    <div class="block_right">
        <div class="image">image 4 for title 4</div>
    </div>
</div>

How do I remove elements? 如何删除元素? Thanks 谢谢

To append the .image elements to the next .block_right elements you can do 要将.image元素附加到下一个.block_right元素,您可以执行此操作

$('.block_right').append(function() {
    return $(this).prev().find('.image');
});

FIDDLE 小提琴

$(".image").each(function() {
    $(this).parent().parent().find(".block_right").append($(this));
});

Try that code, should work! 尝试该代码,应该工作!

Goodluck. 祝好运。

One possible solution with .each() : .each()一种可能解决方案:

$('.block .image').each(function() {
    $(this).closest('.block').find('.block_right').append(this);
});

DEMO: http://jsfiddle.net/6afBy/ 演示: http //jsfiddle.net/6afBy/

Try to use appendTo() here: 尝试在这里使用appendTo()

$('.block_left .image').each(function() {
    $(this).appendTo($(this).parent().next()); 
});

Fiddle Demo 小提琴演示

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM