导航跳转后保持选中状态 jquery高亮当前选中菜单

功能需求:
今天在写一个站点需要用到在导航菜单点击链接跳转到新页面后,高亮当前菜单样式。
简单的说,就是我点击导航菜单中的一个栏目,跳转到该栏目下,该栏目菜单也同时高亮(可以是背景色也可以是背景图片)

解决方法:
通过查看实例,我们需要用到JS中的jquery来实现这种效果,也可以通过CSS设置不同页面的a:hover实现效果,不过这显然是比较笨拙的方法。
那么,如何用JS来实现效果呢,实现它所用的原理就是通过js中的location.href得到当前页面的地址,然后在与导航上的链接地址匹对,相同的就用一个css样式标记。此方法支持动态链接和静态链接多种形式。
效果图:
导航跳转后保持选中状态 jquery高亮当前选中菜单

代码如下:

    1. <script type=”text/javascript” src=”jquery.min.js”></script>
    2. <style>
    3. .menu { padding:0; margin:0; list-style-type:none;}
    4. .menu li { background:#FFD1A4; margin-right:1px; float:left; color:#fff; }
    5. .menu li a { display:block; width:80px; text-align:center; height:32px; line-height:32px; color:#fff; font-size:13px; text-decoration:none;}
    6. .cur{ background:#D96C00; font-weight:bold;}
    7. </style>
    8. <ul class=”menu” id=”menu”>
    9. <li><a href=”a.html”>首页</a></li>
    10. <li><a href=”b.html”>SEO优化</a></li>
    11. <li><a href=”c.html”>生活娱乐</a></li>
    12. </ul>
    13. <script type=”text/javascript”>
    14. var urlstr = location.href;
    15. //alert((urlstr + ‘/’).indexOf($(this).attr(‘href’)));
    16. var urlstatus=false;
    17. $(“#menu a”).each(function () {
    18. if ((urlstr + ‘/’).indexOf($(this).attr(‘href’)) > -1&&$(this).attr(‘href’)!=”) {
    19. $(this).addClass(‘cur’); urlstatus = true;
    20. } else {
    21. $(this).removeClass(‘cur’);
    22. }
    23. });
    24. if (!urlstatus) {$(“#menu a”).eq(0).addClass(‘cur’); }
    25. </script>
    26. from https://blog.csdn.net/yusirxiaer/article/details/62216550
上一篇:ORACLE PL/SQL 中序列(sequence)的简易使用方法介绍


下一篇:mysql不会使用索引,导致全表扫描情况