向适合 url 的子级添加类

发布于 2024-10-16 10:10:07 字数 732 浏览 5 评论 0原文

我制作了一个单页布局网站,当用户来自 Google 或为其添加书签时,菜单不会显示活动/当前链接。

我制作了一个运行良好的脚本,但正如你所见......它看起来很可怕。我怎样才能做到这一点?

//Set .active to current page link
    if (location.href.indexOf("#2") != -1) {
        $("#menu li:nth-child(1) a ").addClass("active");
    }
    if (location.href.indexOf("#3") != -1) {
        $("#menu li:nth-child(2) a ").addClass("active");
    }
    if (location.href.indexOf("#4") != -1) {
        $("#menu li:nth-child(3) a ").addClass("active");
    }
    if (location.href.indexOf("#5") != -1) {
        $("#menu li:nth-child(4) a ").addClass("active");
    }
    if (location.href.indexOf("#6") != -1) {
        $("#menu li:nth-child(5) a ").addClass("active");
    }

先感谢您...

I've made a one page layout website, where the menu doesn't show the active/current link, when users come from Google or bookmarked it.

I've made a script that works fine, but as you see.... it look horribly. How can I do this smart??

//Set .active to current page link
    if (location.href.indexOf("#2") != -1) {
        $("#menu li:nth-child(1) a ").addClass("active");
    }
    if (location.href.indexOf("#3") != -1) {
        $("#menu li:nth-child(2) a ").addClass("active");
    }
    if (location.href.indexOf("#4") != -1) {
        $("#menu li:nth-child(3) a ").addClass("active");
    }
    if (location.href.indexOf("#5") != -1) {
        $("#menu li:nth-child(4) a ").addClass("active");
    }
    if (location.href.indexOf("#6") != -1) {
        $("#menu li:nth-child(5) a ").addClass("active");
    }

Thank you in advance...

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

幻梦 2024-10-23 10:10:07

怎么样:

$("#menu li:nth-child(" + ( location.hash.slice(1) - 1 ) + ") a ").addClass("active");

How about something like:

$("#menu li:nth-child(" + ( location.hash.slice(1) - 1 ) + ") a ").addClass("active");
长亭外,古道边 2024-10-23 10:10:07
var m = location.href.match(/#(\d+)/);
if (m) {
  var index = parseInt(m[1]) - 1;
  if (index >= 1)
    $("#menu li:nth-child("+index+") a ").addClass("active");
}
var m = location.href.match(/#(\d+)/);
if (m) {
  var index = parseInt(m[1]) - 1;
  if (index >= 1)
    $("#menu li:nth-child("+index+") a ").addClass("active");
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文