从数组值中包含div中的div

时间:2014-05-08 09:20:33

标签: javascript jquery

首先,大家好,对不起我的英语 我有十个div,我希望将它们分组在div中,并使用class =" group"
各种div内的div数量。 group取决于数组中的值
因此,如果数组是:[2,3,4,1],结果将是:

<div class="group">
    <div></div>
    <div></div>
</div>    

<div class="group">      
    <div></div>
    <div></div>
    <div></div>
</div>    

<div class="group">       
    <div></div>
    <div></div>
    <div></div>
    <div></div>
</div>

<div class="group">      
    <div></div>
</div>

我能够获得具有指定不同标签组关闭位置的数组的所需结果[2,5,9,10]
但是从今天开始,我的大脑似乎不起作用,我无法用第一个阵列[2,3,4,1]获得相同的结果。
任何答案都会愉快地阅读,谢谢大家。 第二个数组的代码:

var ranges=[2,5,9,10]
    for(i=0;i<ranges.length;i++){
        var a=0
        var b=0
        if(ranges[i]===2){ a=0; b=2}
        else{a=ranges[i-1]; b=ranges[i]}
        console.log(a,b)
        divs.slice(a, b).wrapAll("<div class='group'></div>");
        }

1 个答案:

答案 0 :(得分:1)

你可以使用一个开始变量和一个这样的循环

var $divs = $('div'),
    start = 0;
$.each(array, function (i, val) {
    $divs.slice(start, start + val).wrapAll('<div class="group" />');
    start += val;
})

演示:Fiddle