jquery: exclure les enfants

Je sais que cela a été demandé de nombreuses fois, et j'ai essayé toutes les suggestions, et tout lu sur différents sélecteurs, et etc. mais rien ne fonctionne pour moi

donné le morceau suivant du code HTML:

<div class="class1">
  <p>
   <a>link</a>
  </p>
  <div class="class2 class3">
    <p>
      <font>
        <a>link2</a>
      </font>
    </p>
  </div>
</div>

Je veux sélectionner la première div <a> tag, mais rien à partir de la deuxième div

J'ai essayé:

$('.class1').not('.class2, .class3')
$('.class1').not('.class2')
$('.class1').not('.class3')
$(".class1:not(.class2)")
$(".class1:not(.class3)")
$(".class1:not(.class2, .class3)")
$("div.class1:not(.class2)")
$("div.class1:not(div.class2)")
$("div.class1:not(div.*)")

etc.

Je ne sais pas si c'est parce que la deuxième div a deux noms de classe, ou parce que le deuxième div ' <a> balises ne sont pas les enfants de la deuxième div (par exemple, il y a des balises de polices et de ces autour d'eux), mais je ne suis pas en mesure d'exclure la deuxième div.

fyi - la balise font est obsolète: w3schools.com/tags/tag_font.asp

OriginalL'auteur null | 2010-07-10