当用户在基于URL的子页面中时,我需要突出显示父级导航项。
用户目前在页面 foo1-child 上,父级为 foo1 ,因此我需要将活动类添加到 Foo 1 : http://foo.com/foo1/foo1-child.html
导航:
<ul class="main-nav">
<li><a href="/foo.com/foo1.html">Foo 1</a></li>
<li><a href="/foo.com/foo5.html">Foo 5</a></li>
</ul>
我没有什么问题可以在导航栏中为链接添加活动类,因为我只需比较.nav li a
中的每个href与URL即可,但是如何检查URL是否有匹配的锚链接名称或类似的内容呢?
当前JS代码
$('.main-nav li > a').each(function () {
var $this = $(this);
if ($this.attr('href').indexOf(location.pathname) !== -1) {
$this.addClass('active');
}
});