jQuery用div包装多个id

时间:2015-03-31 03:35:04

标签: jquery html wrapper

我试图用div包装选定的id组,并用不同的组合包装其他组,但不太确定它应该如何工作。

我有以下HTML代码:

<div class="wrapper">
<div id="block_1">
        <div class="post">
        </div>
</div>
<div id="block_2">
        <div class="post">
        </div>
</div>
<div id="block_3">
        <div class="post">
        </div>
</div>
<div id="block_4">
        <div class="post">
        </div>
</div>
<div id="block_5">
        <div class="post">
        </div>
</div>

并且希望使用Jquery使用另一个div包装两个不同的集合,如下所示:

<div class="wrapper">
<div class="wrapright">
    <div id="block_1">
            <div class="post">
            </div>
    </div>
    <div id="block_4">
            <div class="post">
            </div>
    </div>
    <div id="block_5">
            <div class="post">
            </div>
    </div>
</div>
<div class="wrapleft">
    <div id="block_2">
            <div class="post"></div>
    </div>

    <div id="block_3">
            <div class="post"></div>
    </div>

    </div>

</div>

如你所见,我想用block 1,4,5包裹class="wrapright"并用class="wrapleft"

包裹第2,3块

有一种Jquery方式,我可以做到这一点!我找到了一些方法,但都是单套,而不是多个......

感谢您的帮助!

1 个答案:

答案 0 :(得分:6)

您可以使用.wrapAll()。

如果ids和元素集是常数,那么你可以

$('#block_1, #block_4, #block_5').wrapAll('<div class="wrapright" />');
$('#block_2, #block_3').wrapAll('<div class="wrapleft" />');

演示:Fiddle


如果元素集不是常数,那么你需要提出一个如何确定组的逻辑。