gpt4 book ai didi

javascript - 添加基于 URL 的事件导航类

转载 作者:技术小花猫 更新时间:2023-10-29 10:15:43 25 4
gpt4 key购买 nike

我正在尝试将一个 active 类(即 class="active")添加到基于其所在页面的适当菜单列表项负载。下面是我现在的菜单。我已经尝试了在这方面可以找到的所有代码片段,但没有任何效果。那么,有人可以简单地解释一下在何处以及如何添加 javascript 来定义此任务吗?

<ul id="nav">
<li id="navhome"><a href="home.aspx">Home</a></li>
<li id="navmanage"><a href="manageIS.aspx">Manage</a></li>
<li id="navdocso"><a href="docs.aspx">Documents</a></li>
<li id="navadmin"><a href="admin.aspx">Admin Panel</a></li>
<li id="navpast"><a href="past.aspx">View Past</a></li>
</ul>

这是我在网站管理员的 head 标签中放置的 javascript 示例。我做错了什么?

$(document).ready(function () {
$(function () {
$('li a').click(function (e) {
e.preventDefault();
$('a').removeClass('active');
$(this).addClass('active');
});
});
});

最佳答案

这不起作用的原因是因为 javascript 正在执行,然后页面正在重新加载,这使“事件”类无效。您可能想要做的是:

$(function(){
var current = location.pathname;
$('#nav li a').each(function(){
var $this = $(this);
// if the current path is like this link, make it active
if($this.attr('href').indexOf(current) !== -1){
$this.addClass('active');
}
})
})

在某些情况下这不起作用(多个指向相似的链接),但我认为这对您有用。

关于javascript - 添加基于 URL 的事件导航类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20060467/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com