我确定它不是一个特定的jQuery问题,但我用它来实现我的任务,因此我将在jQuery和HTML的上下文中描述我需要的东西。 我有一个由服务器生成的div的HTML页面。他们看起来像从集合中取出n个元素
<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');
现在我需要从collection中取得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个元素的原则。 谢谢。
哇,5行:] – Harmen 2010-11-03 20:48:29
+1这是比我的更完整的解决方案,但我更喜欢'slice(0,8)'到'find'。很高兴知道'detach' :) – theazureshadow 2010-11-03 20:54:44
这是错误的几个原因。 1)使用'.find()'对选择器找到的项目没有影响。 2)使用'.detach()'不会将它们从jQuery对象中移除,所以你将会有一个无限循环。 3)你把所有的东西都附加到同一个容器中,所以你最后的效果和原来的一样。你可能只需要'jQuery('。image')。appendTo('#container')'。 – user113716 2010-11-03 21:03:18