title: Jquery :not selector not working in ie
body: <p>I have the following html code:</p>
  
  <pre><code>&lt;ul&gt;
                  &lt;li class="O"&gt;
                      &lt;label for="radio1"&gt;Radio 1:&lt;/label&gt;
                      &lt;input type="radio" name="radio1" value="Yes" checked&gt;Yes&lt;/input&gt;
                      &lt;input type="radio" name="radio1" value="No"&gt;No&lt;/input&gt;
                  &lt;/li&gt;
                  &lt;li class="O"&gt;
                      &lt;label for="checkbox1"&gt;Checkbox 1:&lt;/label&gt;
                      &lt;input type="checkbox" name="checkbox1" id="checkbox1" value="check"&gt;&lt;/input&gt;
                  &lt;/li&gt;
              &lt;/ul&gt;
  </code></pre>
  
  <p>Using jQuery I'd like to do something with each checkbox not checked or element with an empty value inside an li element with class O. This is my approach:</p>
  
  <pre><code>$('li').each(function(){
          if ($(this).hasClass('O')){
              $(this).children(':not(label,input:radio)').each(function(){
                  if ( $(this).val() == "" || $(this).is(':checkbox:not(:checked)') ) {
                      //do something
                  }
              });
          }
  </code></pre>
  
  <p>This code is working on FF, Opera, Chrome and Safari, but not in IE6-IE7. </p>
  
  <p>With both IEs, getting the length of the li's with $(this).children(':not(label,input:radio)').length returns 2 , other browsers return 0 and 1. </p>
  
  <p>Also, getting the first li's number of children that are not a label ($(this).children(':not(label)').length) returns 4, while getting the number of children ($(this).children().length) returns 2. It makes no sense to me at all. </p>
  
  <p>Am I wrong or is there something in the selector I used that is not fully compatible with IE?</p>
  
  <p>Thanks in advance.</p>