<ul>
<li class="topnav">FirstSet
<ul>
<li><a href='1.aspx'/></li>
<li><a href='2.aspx'/></li>
</ul>
</li>
<li class="topnav">SecondSet
<ul>
<li><a href='3.aspx'/></li>
<li><a href='4.aspx'/></li>
</ul>
</li>
</ul>
这是我的菜单控件,当我在1.aspx / 2.aspx时,我需要高亮显示菜单 FirstSet
$("#nav").find("a[href='" + window.location.pathname + "']").each(function() {
$(this).addClass("activeTab");
});
使用abouve jquery代码,我试图动态添加该类。 如果我在上面的jquery中遗漏了某些东西,请告诉我。
答案 0 :(得分:1)
您不需要each()
来电:
$("#nav").find("a[href='" + window.location.pathname + "']").addClass("activeTab");
根据导航的位置,您可以执行此操作:
$("#nav a[href='" + window.location.pathname + "']").addClass("activeTab");
答案 1 :(得分:0)
如果您尝试将该类添加到封闭的topnav.li
,则此类内容应该有效:
$('#nav')
.find('li.topnav')
.has('a[href='+window.location.pathname+']')
.addClass('activeTab');
这是普通的字符串匹配:请注意/
中的window.location.pathname
中的前导斜杠<a>
而不是{{1}}标记中的内容会导致匹配失败。