使用jQuery将不同数量的div分组到同一个类,直到“last”类
我见过其他相关的问题,但不太像我的 我有不同行数的代码块,希望对这些行进行分组,包括最后一个div:使用jQuery将不同数量的div分组到同一个类,直到“last”类,jquery,grouping,Jquery,Grouping,我见过其他相关的问题,但不太像我的 我有不同行数的代码块,希望对这些行进行分组,包括最后一个div: <div class="row"></div> <div class="row"></div> <div class="last"></div> <br> <div class="row"></div> <div class="row"></div> <div
<div class="row"></div>
<div class="row"></div>
<div class="last"></div>
<br>
<div class="row"></div>
<div class="row"></div>
<div class="row"></div>
<div class="row"></div>
<div class="row"></div>
<div class="last"></div>
<br>
<div class="row"></div>
<div class="row"></div>
<div class="row"></div>
<div class="last"></div>
我想:
<div class="wrapper">
<div class="row"></div>
<div class="row"></div>
<div class="last"></div>
</div>
<br>
<div class="wrapper">
<div class="row"></div>
<div class="row"></div>
<div class="row"></div>
<div class="row"></div>
<div class="row"></div>
<div class="last"></div>
</div>
<br>
<div class="wrapper">
<div class="row"></div>
<div class="row"></div>
<div class="row"></div>
<div class="last"></div>
</div>
我试过各种各样的find,addBefore,wrapAll变体,但就是找不到
我试过以下几种:
$(this).find(".row, .last").wrapAll('<div class="wrapper"></div>');
这里有一个方法:-
//通过检查前一行不是.row来查找所有“first.”行
$'.row.prev':非.row.next.eachfunction{
//包装所有下一个元素,直到找到不是div的内容
$this.nextUntil':notdiv.addBack.wrapAll${
类:“包装器”
};
};
我们可以通过结合prevAll和wrapAll来实现这一点。下面是ocde
$("div.last").each(function() {
$(this).prevAll(".row").addBack().wrapAll("<div class='wrapper' />");
});
演示:这也有效。而且,代码更少。”“普雷瓦尔”是我错过的。