所有带有一个类的链接 - 如何在点击时添加其他类?

时间:2013-07-11 08:38:23

标签: javascript jquery html class toggleclass

如果我有相同类的更多链接,可以点击添加活动项目的附加类吗?我尝试过使用jquery'.toggleClass()',但如果我点击下一个链接,那么两个链接都有相同的类

<a href="link1.html">1</a>
<a href="link2.html">2</a>
<a href="link3.html">3</a>

我试过了:

$('a').click(function() { 
    $('a').toggleClass('active'); 
});

6 个答案:

答案 0 :(得分:1)

您需要使用this

$('a').on('click', function(e) {
  e.preventDefault();
  $(this).toggleClass('active').siblings('a.active').removeClass('active');
});

因此,当单击一个锚点时,切换该给定锚点上的active类,并从所有锚点中删除active类,并且具有active类。< / p>

Here's a fiddle

答案 1 :(得分:0)

使用addClass()方法

$('.link').addClass('active');

答案 2 :(得分:0)

我在你的html中没有看到任何类,但我添加了一些例子。试试这个:

HTML

<div class="menu">
<a href="link1.html">1</a>
<a href="link2.html">2</a>
<a href="link3.html">3</a>
</div>

jQuery

$('.menu a').click(function(){ //check thru all <a> elements  inside .menu
    $('.menu ').removeClass("active"); // remove all active class    
    $(this).addClass("active"); //put active in parent of <a> which was clicked
});

答案 3 :(得分:0)

检查一下:

演示:http://jsfiddle.net/RKjh7/1/

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

答案 4 :(得分:0)

单击其中一个链接后,从当前链接中删除活动类,然后添加到刚刚单击的链接。

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

答案 5 :(得分:0)

首先从所有链接中删除活动类,然后将其添加到单击的元素上。

试试这个:

jQuery('.link').click(function(e){
   e.preventDefault();
    var elem = jQuery(this);
    jQuery('.link').removeClass('active');
    elem.addClass('active');

});

<强> Here is the demo