2012-05-28 103 views
0

我的网站有一个由锚点组成的固定导航。我希望文本在点击时改变颜色,以便直观地表示活动状态,因此必须动态地向链接标签添加一个类。活动项目:使用jQuery将类添加到锚点

我想我需要一些jQuery!问题:我仍然在学习,并且没有对如何实现这一任何想法...

这里是我的HTML:

<nav> 
     <ul> 
      <li class="menu_border"><a href="#accueil">ACCUEIL</a></li> 
      <li class="menu_border"><a href="#projets">PROJETS</a></li> 
      <li class="menu_border"><a href="#services">SERVICES</a>/li> 
      <li class="menu_border><a href="#contact">CONTACT</a></li> 
     </ul> 
    </nav> 

谢谢!

回答

3

你可以使用的东西,如...

$("nav ul").on("click", ".menu-border", function() { 
    $(this).addClass("active").siblings().removeClass("active"); 
}); 

然后在你的CSS定义active类。

+0

我试过了,它不起作用......见http://www.agence-magnificat.fr。 – Forgaria

0
$("nav a").bind("click", function() { 
$("nav a.active").removeClass("active"); 
$(this).addClass("active"). 

}); 
+0

它不起作用... :-( – Forgaria

+0

你有没有为定位标记定义类“活动”? – Arif

+0

是的。在我的CSS。 – Forgaria

0

添加到您的平滑scroll.js文件(或者你使用任何),或者你可以在当前页面打开脚本:

//current highlight 
$('nav ul li a').click(function() { 
    $('nav ul li a').removeClass("current"); 
    $(this).addClass('current'); 
}); 

然后将其添加到您的CSS:

.current 
{ 
    color: #ff6600 !important; 
} 
+0

如果我滚动页面而不是点击URL,该怎么办? –

0

这是Alex的修复程序,他有语法错误。

$("nav ul").click(function() { 
     $(this).addClass("active").siblings().removeClass("active"); 
    });