如何切割ul以便每6个项目都包含在ul中?

时间:2017-07-07 12:58:47

标签: javascript jquery html

我有一个列表元素,其中li的数量可以是想象的数量。

我想要切片,以便我用ul包装第一个第6个元素,然后用另一个ul包装下一个第6个元素,然后用另一个ul包装第6个元素,直到所有元素都被包装。

这是我的HTML

<div id="flexslider" class="flexslider" data-item="4">
  <ul class="slides">
    <li class="item"> <img src="http://placehold.it/1200x600" alt="placeholder image"></li>
    <li class="item"> <img src="http://placehold.it/1200x600" alt="placeholder image"></li>
    <li class="item"> <img src="http://placehold.it/1200x600" alt="placeholder image"></li>
    <li class="item"> <img src="http://placehold.it/1200x600" alt="placeholder image"></li>
    <li class="item"> <img src="http://placehold.it/1200x600" alt="placeholder image"></li>
    <li class="item"> <img src="http://placehold.it/1200x600" alt="placeholder image"></li>
    <li class="item"> <img src="http://placehold.it/1200x600" alt="placeholder image"></li>
    <li class="item"> <img src="http://placehold.it/1200x600" alt="placeholder image"></li>
    <li class="item"> <img src="http://placehold.it/1200x600" alt="placeholder image"></li>
    <li class="item"> <img src="http://placehold.it/1200x600" alt="placeholder image"></li>
    <li class="item"> <img src="http://placehold.it/1200x600" alt="placeholder image"></li>
    <li class="item"> <img src="http://placehold.it/1200x600" alt="placeholder image"></li>
    <li class="item"> <img src="http://placehold.it/1200x600" alt="placeholder image"></li>
    <li class="item"> <img src="http://placehold.it/1200x600" alt="placeholder image"></li>
    <li class="item"> <img src="http://placehold.it/1200x600" alt="placeholder image"></li>
    <li class="item"> <img src="http://placehold.it/1200x600" alt="placeholder image"></li>
    <li class="item"> <img src="http://placehold.it/1200x600" alt="placeholder image"></li>
    <li class="item"> <img src="http://placehold.it/1200x600" alt="placeholder image"></li>    
  </ul>
</div>

我的jQuery做包装

for (var i = 0; i < item.length; i += dataItem) {
  item.slice(i, i + dataItem).wrapAll('<ul class="items"></ul>');
}

我希望上面的jQuery能给我以下输出

  item.slice(0, 6).wrapAll('<ul class="items"></ul>');
  item.slice(6, 12).wrapAll('<ul class="items"></ul>');
  item.slice(12, 18 + dataItem).wrapAll('<ul class="items"></ul>');

然而,它没有创造三个uls。它创造了两个。

我做错了什么?我怎样才能创建三个ul?

0 个答案:

没有答案