0

たとえば、ドロップ ダウン ナビゲーションがある場合、アクティブなリンクをナビゲーション リンクの残りの部分とは異なる色にしたいと考えています

これが私のjqueryコードです:

if ($(".testHeader a#" + thisID).hasClass("active")) {
    $(".testHeader a").removeClass("active");
} else {
    $(".testHeader a").removeClass("active");
    $(".testHeader a#" + thisID).addClass("active");
}

私のactiveクラスは、リンクの色を変更するCSSスタイルです。

私が抱えている問題は、複数のリンクをクリックすると、各リンクがアクティブなままになることです。実際には、クリックされたときにアクティブになるリンクを1つだけにしたいのです。私のjqueryの何が問題になっていますか? ありがとう!

4

3 に答える 3

1

あなたはただ言うことができます

$(".testHeader a#"+thisID).toggleClass("active");
于 2013-07-01T17:22:20.040 に答える
0

を使用しthisます。イベントがトリガーされたときにアクティブなクラスをすべて削除してから、現在選択されているオブジェクトにクラスを追加しますthis

$('a').click(function(){
    $('a').removeClass('active');
    $(this).addClass('active');
});

EDIT : もう一度クリックして閉じるには、これを行います。

$('a').click(function(){
     if($(this).hasClass('active')){
         $(this).removeClass('active');
     }else{
         $('a').removeClass('active');
         $(this).addClass('active');
     }

});
于 2013-07-01T17:26:36.847 に答える