Для создания допустимого HTML здесь вам нужно также обернуть их как элементы списка, получив такой результат:
<ul>
<li><div class="item">1</div></li>
<li><div class="item">2</div></li>
<li><div class="item">3</div></li>
<li><div class="item">4</div></li>
<li><div class="item">5</div></li>
</ul>
<ul>
<li><div class="item">6</div></li>
<li><div class="item">7</div></li>
<li><div class="item">8</div></li>
</ul>
Вот jQuery, который будет выполнять это обтекание / группирование каждых 5 элементови оставшиеся в конце, это будет работать для любого количества делений, которые у вас есть:
var elems = $("div.item");
for(var i = 0; i < elems.length; i+=5) {
elems.slice(i, i+5).wrap('<li></li>').parent().wrapAll("<ul></ul>");
}
Вы можете увидеть рабочую демонстрацию здесь , это .wrap()
s каждый элемент в <li>
затем объединяет группы, используя .wrapAll()
в <ul>
.