现在的位置: 首页 -> 前端学习 -> JS前端 -> 用js实现导航菜单点击切换选中时高亮状态

用js实现导航菜单点击切换选中时高亮状态

2013-09-23 22:06评论数 3 ⁄ 被浏览 34478 views+

随着用户点击导航或菜单上不同的页面,出现此选项高亮显示或变为一个新的样式是经常用到的。实现它所用的原理就是通过js中的location.href得到当前页面的地址,然后在与导航上的链接地址匹对,相同的就用一个css样式标记。此方法支持动态链接和静态链接多种形式。


用js实现导航菜单点击切换选中时高亮状态


实现代码:


<script type="text/javascript" src="http://www.daixiaorui.com/Public/js/jquery.min.js"></script>

<style>

.menu { padding:0; margin:0; list-style-type:none;}

.menu li { background:#FFD1A4; margin-right:1px; float:left; color:#fff; }

.menu li a { display:block; width:80px; text-align:center; height:32px; line-height:32px; color:#fff; font-size:13px; text-decoration:none;}

.cur{ background:#D96C00; font-weight:bold;}

</style>


<ul class="menu" id="menu">

  <li><a href="demo.html">首页</a></li>

  <li><a href="te1.html">PHP综合</a></li>

  <li><a href="te2.html">Ecshop</a></li>

</ul>


<script type="text/javascript">

  var urlstr = location.href;

  //alert((urlstr + '/').indexOf($(this).attr('href')));

  var urlstatus=false;

  $("#menu a").each(function () {

    if ((urlstr + '/').indexOf($(this).attr('href')) > -1&&$(this).attr('href')!='') {

      $(this).addClass('cur'); urlstatus = true;

    } else {

      $(this).removeClass('cur');

    }

  });

  if (!urlstatus) {$("#menu a").eq(0).addClass('cur'); }

</script>


演示1(静态链接的效果):http://www.daixiaorui.com/Public/demo/js/navCur/demo.html 


演示2(动态链接的效果):http://www.daixiaorui.com/Public/demo/js/navCur/demo1.html?aa=1 

 

文章出自:http://www.daixiaorui.com/read/45.html 本站所有文章,除注明出处外皆为原创,转载请注明本文地址,版权所有。

分享到:

目前有 3 条评论  @我要评论

  1. 3楼dddnmn : 2015-10-24 18:38:07 评论说: @回复

    高亮时的字体颜色没用呢

  2. 2楼 : 2015-06-13 15:21:26 评论说: @回复

    楼主能不能共享一下jquery.min.js

  3. 1楼南無阿彌陀佛 : 2014-08-14 20:15:07 评论说: @回复

    感謝您的分享~收益匪淺^^

您的每一个评论都是对我的一份支持

 博客二维码

昵称 *

邮箱 *