1

私はこの構造を持っています:

<li id="artworks"><a href="#">ARTWORK</a>
                <ul class="submenu">
                    <img src="../img/submenu.png" alt="submenu" width="62" height="1" />
                    <li id="sweetlife"><a href="#">Sweet Life</a></li>
                    <li><a href="#">Pleasure</a></li>
                    <li><a href="#">Bienal de la habana</a></li>
                    <li><a href="#">Estudios de craneos</a></li>width="62" height="1" />
                </ul>
            </li>

そして、私はこのスクリプトを使用しています:

    <script type="text/javascript">
      $(document).ready(function(){
          $('#artworks li').addClass('active')
      });
    </script>

問題は、アクティブなクラスを "li id="artworks"" 要素にのみ追加したいのですが、スクリプトを使用すると、#artworks に属するすべての "li" に追加されます。

親の li だけを指すにはどうすればよいですか?

4

5 に答える 5

2

試す

$('#artworks > a').addClass('active')
于 2012-10-12T11:19:28.680 に答える
2

コードは

$('#artworks').addClass('active')​;

ここで作業を見ることができます

于 2012-10-12T11:22:08.217 に答える
1

このコードを変更します。

$('#artworks li').addClass('active')

これに:

$('#artworks').addClass('active')

なぜこれが機能するのですか? #artworksIDが「artworks」の要素を識別します(できれば1つだけです!)。その後にスペースと要素を指定すると、jQueryは、の子であるそのタイプのすべての要素と一致するようになり#artworkます。セレクター構文を確認するには:http ://www.w3.org/TR/selectors/#selectors

于 2012-10-12T11:20:44.420 に答える
1

これはあなたが私が思うものです:

$(document).ready(function(){
      $('li#artworks').addClass('active')
});
于 2012-10-12T11:20:54.750 に答える
0

これを試してみてください

$('#artworks').addClass('active')​;
于 2012-10-12T11:20:33.543 に答える