Обернуть прямые классы братьев и сестер в свои собственные div
Я хочу обернуть прямые группы классов, начинающиеся с "ok", в свои собственные http://jsfiddle.net/7hABQ/12/
<div class="foo"></div>
<div class="ok-4"></div>
<div class="ok-87"></div>
<div class="ok-11"></div>
<div class="bar"></div>
<div class="baz"></div>
<div class="ok-5a4"></div>
<div class="ok-12"></div>
<div class="bim">iii</div>
в это:
<div class="foo"></div>
<div id="wrapper">
<div class="ok-4"></div>
<div class="ok-87"></div>
<div class="ok-11"></div>
</div>
<div class="bar"></div>
<div class="baz"></div>
<div id="wrapper">
<div class="ok-5a4"></div>
<div class="ok-12"></div>
</div>
<div class="bim">iii</div>
1 ответ
Решение
Одно из возможных решений:
$(':not(div[class^="ok"]) + div[class^="ok"]').each(function() {
$(this).nextUntil(':not(div[class^="ok"])')
.addBack()
.wrapAll('<div class="wrapper"></div>');
});