导航点击跳转后选项更换

发布于 2022-09-06 09:10:04 字数 567 浏览 9 评论 0

1.用的是bootstrap导航
html的结构是

<nav>
    <ul>
        <li class="active">
            <a>

然后有

<a href="/">首页</a>
<a href="/product">产品</a>
<a href="/help">帮助</a>

等等

想实现的效果:点击后跳转到指定页面之后,对应的选项添加一个Class="active"
也就是:比如点了产品页.跳转到产品页,产品页那个就变成

<li class="active"><a href="/product">产品</a></li>

其他选项变成

<li><a href="/...">产品</a></li>

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

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

发布评论

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

评论(3

自由如风 2022-09-13 09:10:04

在脚本里获取 URL 中的信息来找和 <a href="...."> 中的对应关系,然后给找到的 <a> 添加 active 类。

既然你的页面是刷新的,但导航是公共的,这部分代码可以写在公共区域的尾部,立即执行或者在 ready 事件中执行都可以。

关键是要把 url 分析准确,能正确匹配到 <a> 上去。

浮光之海 2022-09-13 09:10:04

可以通过js获取url来添加修改active

ゝ杯具 2022-09-13 09:10:04

给这个ul增加一个id;通过js判断

//html
<nav>
    <ul id="test>
        <li class="active"><a href="/">首页</a></li>
        <li><a href="/product">产品</a></li>
        <li><a href="/help">帮助</a></li>
   </ul>
</nav>

//js
$(function(){
  $("#test li").click(function() {    
    $(this).siblings('li').removeClass('active');  // 删除选中的其他兄弟元素的样式   
    $(this).addClass('active');                    // 添加当前元素的样式    
  });
}); 
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文