0

此站点上的活动导航脚本(显然)遇到问题

我正在使用css-tricks active nav 脚本的细微调整......

这是我的代码:

if (!$('body').hasClass('home')) {
    $('#main-nav li a[href^="/' + location.pathname.split("/")[1] + '"]').parent().addClass('active');
} else {
    $('#main-nav li:first-child').addClass('active');
}

它在主要代理站点上运行良好,但是当我们深入到代理页面(上面的第一个链接)时,它会将它们分配给所有活动类。

任何帮助将不胜感激!希望将其保留为 js 解决方案,而不是处理 body id。

任何帮助将不胜感激!

4

2 回答 2

0

在您使用的代码中

$('#main-nav li a[href^="/' + location.pathname.split("/")[1] + '"]')

返回“代理”。由于您的所有链接都以代理开头,因此您的所有链接都获得了活动类。

以下代码适用于您的代理页面

$('#main-nav li a[href="' + location.pathname + '"]').parent().addClass('active');
于 2013-09-17T14:03:25.567 回答
0

/agents/andrew-terrell/... 检查链接的href -当你去的时候,所有这些都是如此

location.pathname.split("/")[1]

你会得到andrew-terrell,它会选择你菜单中的每个链接。也许你应该检查一下整个location.pathname

于 2013-09-17T14:04:46.320 回答