2014-02-20 38 views
1

對於手機導航按鈕的目的,我希望鏈接點擊(顯示菜單)添加活動類,然後,當你再次單擊相同的鏈接(摺疊菜單)它會刪除類。在單鏈路上切換類?

$(function() { 
    $(".nav-mobile").click(function() { 
     $(".nav-mobile").removeClass("active"); 
     $(this).addClass("active"); 
    }); 
}); 

這會在點擊時添加活動類,但在再次單擊時不會將其刪除。

是否可以將其刪除?

+1

它似乎是毫無意義的腳本。你已經刪除了一個課程並再次添加它! –

+0

該鏈接打開一個菜單,我希望課程通過更改其顏色來指示菜單已打開,然後單擊以再次關閉它,而不是該顏色,因此無法打開。 – user4630

+0

刪除後再次添加 – timo

回答

2

您可以在jQuery中使用toggleClass()函數。它確實是你想要的。

檢查API文檔:https://api.jquery.com/toggleClass/

+0

謝謝你,這工作完美。我之前嘗試過切換,但沒有奏效,從這個例子中就可以看出來。 – user4630

+0

不客氣。 –

1

使用此代碼來代替:

$(function() { 
    $(".nav-mobile").click(function() { 
     $(".nav-mobile").not(this).removeClass("active"); 
     $(this).toggleClass("active"); 
    }); 
}); 
0

試試這個

$(function() { 
    $(".nav-mobile").click(function() { 
     var $this = $(this); 
     if($this.hasClass('active')) { 
      $this.removeClass('active'); 
     } else { 
      $(".nav-mobile").removeClass("active"); 
      $this.addClass("active"); 
     } 
    }); 
});