如果href与变量匹配,则将类添加到菜单li

时间:2014-08-27 13:29:00

标签: javascript jquery html css

我有一个多级菜单,我需要通过将类active添加到列表中来突出显示TOP级菜单。

Example on fiddle

我存储了需要在javascript变量var activeHREF= '/news/';

中处于活动状态的链接值

我需要jquery可以搜索列表li并匹配列表中的href(如果它与anchor元素匹配),那么它应该向此特定列表添加class='active'

我这是更有效的方式来处理我的场景,我可以有多达3或4个多级菜单,我需要突出显示顶级父菜单

指针可以是一个好的开始方式。

3 个答案:

答案 0 :(得分:3)

我认为你正在寻找这样的东西:

$("li:has(a[href='" +activeHREF+ "']):first()").addClass("active")

答案 1 :(得分:3)

带有多个无序列表级别的

jsFiddle Example

$("a[href='" +activeHREF+ "']").parent().addClass("active")

使用过滤器可以做同样的事情

$('a').filter(function() {
    return $(this).attr('href') == activeHREF;
}).parent().addClass('active');

答案 2 :(得分:1)

我将如何做到这一点:

Online Demo

$(document).ready(function(){
var activeHREF= '\/contact\/';
    $('li').removeClass('active');
    $('a[href="'+activeHREF+'"]').parent().addClass('active');        
});