¿Cuál es la mejor forma de detectar ejecuciones de elementos dom en jQuery?Detección de "ejecuciones" de elementos DOM en jQuery
Por ejemplo, si tengo la siguiente lista de elementos
<ol>
<li class="a"></li>
<li class="foo"></li>
<li class="a"></li>
<li class="a"></li>
<li class="foo"></li>
<li class="foo"></li>
<li class="foo"></li>
<li class="a"></li>
<li class="foo"></li>
<li class="foo"></li>
<li class="foo"></li>
</ol>
decir que quiero agarrar todos los li.foo
elementos y se envuelven dentro de su propio <ol>
bloque (o cualquier envoltorio para el caso) para terminar con algo así como
<ol>
<li class="a"></li>
<li class="foo"></li>
<li class="a"></li>
<li class="a"></li>
<li><ol>
<li class="foo"></li>
<li class="foo"></li>
<li class="foo"></li>
</ol></li>
<li class="a"></li>
<li><ol>
<li class="foo"></li>
<li class="foo"></li>
<li class="foo"></li>
</ol></li>
</ol>
Como se puede ver en el ejemplo, sólo quiero envolver "corre" de los elementos li.foo
dom (donde hay 2 o más li.foo
elementos en la sucesión.
No estoy seguro de la mejor/manera más eficaz para lograr esto a través de jQuery (o Javascript simplemente para el caso)