Question: Struggling with this one for a while now. My markup simplified:

```
<div class=row>
    <div class="somediv"></div>
    <div class="somediv2"></div>
    <div class="elem"></div>
    <div class="elem"></div>
    <div class="somediv3"></div>
    <div class="somediv4"></div>
<div class=row>
....

```

I need to find a way to select all DIVs on document ready that:
 1. has a class: elem
 2. their next DIV also has the class name: elem.
Then I need to insert a new DIV between them:

```
<div class=row>
    <div class="somediv2"></div>
    <div class="elem"></div>
    <div class="new"></div>
    <div class="elem"></div>
    <div class="somediv3"></div>
    <div class="somediv4"></div>
<div class=row> // and it goes...

$(document).ready( function () {
   if($('.elem').next().hasClass('.elem')) {
       $('<div class="new"></div>').appendTo().prev('.elem');
   } else {
   });
});

```

Answer: 
Try this:

```
$(document).ready( function () {
   $('.elem + .elem').before($('<div class="new"></div>'));
});

```

It's using CSS's adjacent sibling selector (`+`). It finds an element with class `.elem` with another element with class `.elem` immediately preceding it, then adds a new div before it.

Fiddle: <http://jsfiddle.net/4r2k4/>
Your code looks pretty good to me. Don't you just need to wrap it in a `each` so that it fires on each one?

```
$(document).ready( function () {
   $('.elem').each( function() {
     if($(this).next().hasClass('.elem')) {
         $('<div class="new"></div>').appendTo().prev('.places');
     } else {}
   });
});

```