Javascript JQuery-排序后将div以50个为一组进行包装
我有以下html:Javascript JQuery-排序后将div以50个为一组进行包装,javascript,jquery,Javascript,Jquery,我有以下html: <div class="backpack_all"> //wrapper for all on screen content ... <div class="backpack"> //main content to display <div class="item1"> <div class="item2"> <div class="item3">
<div class="backpack_all"> //wrapper for all on screen content
...
<div class="backpack"> //main content to display
<div class="item1">
<div class="item2">
<div class="item3">
...etc
//所有屏幕内容的包装器
...
//要显示的主要内容
等
我将有200-500件这种格式的物品。我还积极地按照这些项目的各种属性对这些数据进行排序。未排序时,它们将由一个class=“backpack\u partition”以50个为一组进行分区,该分区将包裹大约50个项目。要对它们进行排序,我必须从它们各自的分区中打开所有项目。如何使用jquery/javascript重新编写它们 您可以尝试以下方法:
围绕匹配元素集中的所有元素包装HTML结构
$('.backpack').wrapAll('')
或:
$('.backpack:first').nextUntil('.backpack:eq(50)').end().wrapAll('')
求助于一些好的老式JS
var divs = $('.backpack > .item');
for(var i = 0; i < divs.length; i+=50) {
divs.slice(i, i+50).wrapAll("<div class='backpack_partition'></div>");
}
var divs=$('.backpack>.item');
对于(变量i=0;i
不幸的是,这并不能完全做到这一点。为了澄清,我试图在div类“backpack_partition”中包装每50个“items”,这将是“backpack”的子类。谢谢你们提供的任何见解,你们的一句话已经让我大吃一惊了。
$('.backpack:first').nextUntil('.backpack:eq(50)').end().wrapAll('<div class="backpack_all" />')
var divs = $('.backpack > .item');
for(var i = 0; i < divs.length; i+=50) {
divs.slice(i, i+50).wrapAll("<div class='backpack_partition'></div>");
}