2011-11-11 11 views
0

以来頭痛が、これは私のhtmlコードです:jQueryを使って<a>を選択...リストを2時間

<ul class="choix-kit_modele_list"> 
     <li class="first modele"><a href="">Modèle :</a></li> 
     <li><a href="">A1</a></li> 
     <li><a href="">A3</a> 
      <ul class="choix-kit_type_list"> 
       <li class="first type"><a href="">Type :</a></li> 
       <li><a href="">3 Portes - 1999 à 2003</a></li> 
       <li><a href="">3 Portes - 2004 à Aujourd'hui</a></li> 
       <li><a href="">5 Portes - 1999 à 2003</a></li> 
       <li><a href="">Cabriolet - 2008 à Aujourd'hui</a></li> 
       <li class="last"><a href="">Sportback - 2005 à Aujourd'hui</a></li> 
      </ul> 
     </li> 
     <li class="last"><a href="">A4 Berline</a></li> 
    </ul> 

私は、リストの最初のレベルの選択したいと思いますので、これは私のコードです、すべてを選択しWICH:

$('.choix-kit_modele_list li > a').not('.choix-kit_type_list li a').each(function(i){ 
    $(this).css({width: 100}); 
}); 

だから私は、「それぞれのクラスでそれらを呼び出すことを通じて、彼のUL子最初のULの私の選択はありませんと言ったので、何が私のコードで間違って下さいます

。?おかげで私n個すべてのaは、すべてのレベルでliの子であるため、子セレクタは、.choix-kit_modele_listliの間でなければなりません

+0

ありがとう、あなたのコードの仕組みやコードが間違っている理由についてもっと詳しく説明できますか?もう一度ありがとうございます – JojoLapin45

+0

あなたは答えを受け入れることをお勧めします - 人々が将来もあなたの質問に答えることを確実にする良い方法です。 –

答えて

3

を助けるあなたのための推進:

$('.choix-kit_modele_list > li a').each(function(i) { 
    $(this).css({ width: 100 }); 
}); 
1

変更:

$('.choix-kit_modele_list li > a').not('.choix-kit_type_list li a') 

へ:

$('.choix-kit_modele_list > li > a') 
1
$('ul.choix-kit_modele_list > li > a').each(function(){ 
    $(this).css("font-size", "26px"); 
}); 

セレクタが最初のulの子孫である<li>のすべての直下のリンクに適用されたため、コードが機能していませんでした。

セレクタのli部分の前に>を追加すると、ulの直系子孫である項目が<li>であることが確認され、2番目のulに入ることができなくなります。

希望をクリアします。

関連する問題