为2级菜单添加活动菜单,为2级菜单jquery添加活动菜单

为2级菜单添加活动菜单,为2级菜单jquery添加活动菜单,jquery,html,css,Jquery,Html,Css,我有一个两级菜单,当我点击第一级菜单时,它以黄色突出显示,工作正常 但是,当我从第二个级别中选择一个类别时,我希望第一个级别中的主类别也被突出显示,以便用户知道他正在浏览哪个主类别 这是我的网站: 将循环更改为 var url = window.location.pathname; var urlRegExp = new RegExp(url.replace(/\/$/,'')); $('.mainNav li a').each(function(){ // and test

我有一个两级菜单,当我点击第一级菜单时,它以黄色突出显示,工作正常

但是,当我从第二个级别中选择一个类别时,我希望第一个级别中的主类别也被突出显示,以便用户知道他正在浏览哪个主类别

这是我的网站:

将循环更改为

var url = window.location.pathname;
var urlRegExp = new RegExp(url.replace(/\/$/,''));
$('.mainNav li a').each(function(){
        // and test its href against the url pathname regexp
        if(urlRegExp.test(this.href)){
            $(this).addClass('active');
            $(this).closest('.mainNav>li').children('a').addClass("active");
        }
    });
最近的
函数查找与选择器匹配的第一个(最近的)祖先,然后您可以将类添加到它的直接子类中。

更改

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


似乎问题只存在于第二个菜单当我点击第二个菜单中的一个项目时,我希望第一个菜单中该元素所属的类别也被高亮显示。
var url = window.location.pathname;
var urlRegExp = new RegExp(url.replace(/\/$/,''));
$('.mainNav li a').each(function(){
        // and test its href against the url pathname regexp
        if(urlRegExp.test(this.href)){
            $(this).addClass('active');
            $(this).closest('.mainNav>li').children('a').addClass("active");
        }
    });
$(this).addClass('active');
$(this).add($(this).parents('.mainNav li > a')).addClass('active');