我的导航菜单看起来像这样基于URL
<div id="menu-div">
<ul>
<li><a href="localhost/admin/">Admin</a></li>
<li><a href="localhost/admin/page/">Pages</a></li>
<li><a href="localhost/admin/image/">Gallery</a></li>
<li><a href="localhost/admin/account/">Accounts</a></li>
<li><a href="localhost/admin/role">Roles</a></li>
<li><a href="localhost/admin/theme">Layout</a></li>
<li><a href="localhost/admin/backup">Backup</a></li>
</ul>
</div>
我想主动类添加到基于URL的导航链接。我尝试了以下jQuery功能
$(function() {
$('#menu-div a[href^="/' + location.pathname.split("/")[1] + '"]').addClass('active');
});
此函数将所有链接设置为活动而不是仅当前活动。 jQuery函数一定有问题。我对它不太满意。任何帮助将非常感激。谢谢。
谢谢你让我很快乐。 –
@BidhanA请稍候,我将改进代码,它可能会错误地匹配其他路径 – r3wt
@BidhanA更新了一个更正确的答案,应该防止类似名称中的路径结尾,以及相对的href,例如'/路径/到/页面'与出HTTP和主机名称。 – r3wt