I'd like to use jQuery to wrap <ul class="main-list">
around each 6 of it's first children <li>
's. What's the best way to accomplish this with jQuery?
Here's the jQuery I'm using:
$(document).ready(function() {
var lis = $(".main-list li");
for(var i = 0; i < lis.length; i+=6) {
lis.slice(i, i+6)
.wrapAll("<ul class='list_unstyled'></ul>");
}
});
Here's the original code (ExpressionEngine):
<ul class="list-unstyled main-list">
{exp:channel:category_archive channel="speakers" style="linear" backspace="7"}
<li>
{categories}
<a href="#">{category_name}</a>
{/categories}
{entry_titles}
<ul class="list-unstyled">
<li><a href="{path='site/speaker'}">{title}</a></li>
</ul>
{/entry_titles}
</li>
{/exp:channel:category_archive}
</ul>
Here's the code that's currently being outputted with jquery above:
<ul class="list-unstyled main-list">
<ul class="list_unstyled">
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
<ul class="list_unstyled">
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
</ul>
Here's the desired result after implementing jQuery:
<ul class="list_unstyled">
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
<ul class="list_unstyled">
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>