6

私はさまざまなオプションを試しましたが、ばかげたものを機能させることができません。<li>内の<a>タグ内のスパンを取得して、クラスを「アクティブ」に変更するにはどうすればよいですか。次に、別の<a>がクリックされたときにそれを削除しますか?

<ul id="dumb">
<li><a href="#">Something<span></span></a></li>
<li><a href="#">Something Else<span></span></a></li>
</ul>

<a>をクリックすると、スパンに「アクティブ」のクラスが与えられ、別のクラスをクリックすると、元のスパンから削除され、その<a>..のスパンに追加されます。

ありがとう!

4

3 に答える 3

12
$(function(){
      $("#dumb > li > a").click ( function(){
      $("#dumb > li > a > span").removeClass ( 'active' );
      $(this).find('span').addClass('active');
      return false;
     });
});
于 2009-12-23T11:25:17.697 に答える
5

これを試して:

$(document).ready(function(){
    var $MySpans = $("#dumb li a span");
    $MySpans.click(function(){
        $MySpans.removeClass();
        $(this).addClass("active");
    });
});

あなたはこれを試すかもしれません、そしてそれがうまくいくならそれはより速いセレクターになるでしょう:

var $MySpans = $("#dumb>li>a>span");
于 2009-12-23T11:19:21.220 に答える
1

jQuery('#dumb li a span')。addClass( "active");

于 2015-05-07T12:02:11.170 に答える