2015-05-14 99 views
0

当我点击其他锚时,如何更改class .active-link?如何添加和删除活动类?

<div id="settings" class="account-collapse collapse in"> 
    <div class="account-body"> 
    <a href="#/PersonalInfo" class="active-link">PERSONAL_INFORMATION</a> 
    <a href="#/Notifications">NOTIFICATIONS_SETTINGS</a> 
    <a href="#/PasswordChange">CHANGE_PASSWORD</a> 
    <a href="#">GAME_SETTINGS</a> 
    </div> 
    </div> 

我试过,但它不工作:

$('div').click(function() { 
     var hash = window.location.hash; 
     $("a.active-link").removeClass(); 
     $('a[href="' + hash + '"]').addClass('active-link'); 


}); 

回答

2

尝试

$('#settings a').click(function(event) { 
    event.preventDefault(); // prevent default action 
    $('#settings a').removeClass('active-link'); // remove all active class 
    $(this).addClass('active-link'); // apply for current a tag 
}); 

Fiddle

+0

嗯,它不工作 – None

+0

它的作品像一个魅力... –

+0

https:///jsfiddle.net/45z8qdq3/ –

0
$('#settings a').not('.active-link').click(function(){//when other links are clicked 
    $('#settings .active-link').removeClass('active-link').addClass('mynewclass'); 
}) 

DEMO:https://jsfiddle.net/fuk4cyk4/2/

+0

我不知道是因为我,但它不工作 – None

+0

@无法看到演示https://jsfiddle.net/fuk4cyk4/2/ – renakre