微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jquery – 将6个li元素组合在一个长列表中

我有一个这样的长列表:

<ul>
    <li>item 1</li>
    <li>item 2</li>
    <li>item 3</li>
    <li>item 4</li>
    <li>item 5</li>
    <li>item 6</li>
    <li>item 7</li>
    <li>item 8</li>
    <li>item 9</li>
    <li>item 10</li>
    <li>item 11</li>
    ...
</ul>

我想以某种方式包围他们周围的一些div像这样:

<ul>
    <div>
        <li>item 1</li>
        ...
        <li>item 6</li>
    </div>

    <div>
        <li>item 7</li>
        ...
        <li>item 12</li>
    </div>

    <div>
        ...
    </div>
</ul>

我怎么能做到这一点?

我试过.after(‘< / div>< div>‘);但它没有用,它增加一个< div>< / div>.

解决方法

您可以这样做以快速包装它们,从而得到正确的HTML,如下所示:

var lis = $("ul li");
for(var i = 0; i < lis.length; i+=6) {
  lis.slice(i,i+6).wrapAll("<li class='li_group'><ul></ul></li>");
}

这导致:

<ul>
  <li class='li_group'>
    <ul>
      <li>item 1</li>
      <li>item 2</li>
      <li>item 3</li>
      <li>item 4</li>
      <li>item 5</li>
      <li>item 6</li>
    </ul>
  </li>
  <li class='li_group'>
    <ul>
      <li>item 7</li>
      <li>item 8</li>
      <li>item 9</li>
      <li>item 10</li>
      <li>item 11</li>
      <li>item 12</li>
    </ul>
  </li>
  ...      
</ul>

只是样式li_group,但你想要视觉上.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐