我见过其他相关问题,但与我的不太一样。
我有行数不同的代码块,并且想要对这些行进行分组,包括“最后一个”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>');
最佳答案
这是一种方法:-
//find all the 'first' .row by checking the previous is not a .row
$('.row').prev(':not(.row)').next().each(function() {
//wrap all next elements until you find something not a div
$(this).nextUntil(':not(div)').addBack().wrapAll($("<div></div>", {
class: 'wrapper'
}));
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<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>
关于jquery - 使用 jQuery 将不同数量的具有相同类的 div 分组,直到 "last"类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35277845/