ユーザーがコンテンツのブロックをページに挿入できるようにする cms があります。ユーザーが使用できるコンテンツ ブロックにはさまざまな種類があり、任意の順序で挿入できます。高レベルの dom 構造の例は、次のようになります。
<p>Some rich text</p>
<div class="box">...</div>
<div class="box">...</div>
<div class="box">...</div>
<h3>Some more rich text</h3>
<p>Lorem ipsum</p>
<div class="box">...</div>
<div class="box">...</div>
私がやりたいことは、隣接する「ボックス」divをラップする「コンテナ」divにラップすることです。上記の例では、ボックス div のグループが 2 つあるため、2 つの「コンテナ」div が挿入され、次のようになります。
<p>Some rich text</p>
<div class="container">
<div class="box">...</div>
<div class="box">...</div>
<div class="box">...</div>
</div>
<h3>Some more rich text</h3>
<p>Lorem ipsum</p>
<div class="container">
<div class="box">...</div>
<div class="box">...</div>
</div>
CSSセレクターでそれを行う賢い方法があるとは思わないので、とにかくjQueryでこれを行う方法を知っている人はいますか?