当前位置 : 主页 > 网页制作 > JQuery >

jquery – 从集合中获取n个元素

来源:互联网 收集:自由互联 发布时间:2021-06-15
我确信这不是一个特定的jQuery问题,但是我用它来实现我的任务,所以我将在jQuery和 HTML的上下文中描述我需​​要的东西. 我有一个HTML页面,其中包含由服务器生成的div.他们看着像是 di
我确信这不是一个特定的jQuery问题,但是我用它来实现我的任务,所以我将在jQuery和 HTML的上下文中描述我需​​要的东西.
我有一个HTML页面,其中包含由服务器生成的div.他们看着像是

<div class="image"><img src="image1.png" /></div>
<div class="image"><img src="image2.png" /></div>
...
<div class="image"><img src="imagen.png" /></div>

div的计数是可变的,例如可以是40-50.
我用这样的东西收集它们:images = jQuery(‘.image’);
现在我需要从集合中获取每9个div并将它们放在一个新创建的容器中,例如,像这样:

<div class="container1">
<div class="image"><img src="image1.png" /></div>
<div class="image"><img src="image2.png" /></div>
<div class="image"><img src="image3.png" /></div>
...
<div class="image"><img src="image9.png" /></div>
</div>

然后我需要接下来的9个元素并将它们放在一个类似的新创建的div中,如下所示:

<div class="container2">
<div class="image"><img src="image10.png" /></div>
<div class="image"><img src="image11.png" /></div>
<div class="image"><img src="image12.png" /></div>
...
<div class="image"><img src="image18.png" /></div>
</div>

这样我需要获取所有元素并将它们放在新创建的容器中.最后,我将有几个容器,每个容器包含9个元素.显然,如果图像div的总量不是9的倍数,则最后一个容器可以具有更少的元素.
我不是要求一个完整的解决方案,但我需要实现从一个集合中获取每个9个元素的原则.
谢谢.

修复!

..感谢所有的评论.这个工作版本建立在patrick dw的方法之上.希望这有助于..

var images = jQuery('.image');
for(i = 0; i < images.length / 9; i++) {
 jQuery('<div />', {
   id: 'conainter_' + i,
   html: images.slice(i*9, i*9+9)
 }).appendTo('body');
}

即使我最初的回答只是一个暗示;)

网友评论