效果如下:
复制代码 代码如下:
<doctype html> <html> <head> <script src="http://code.jquery.com/jquery-2.0.3.min.js"></script> <meta charset="utf-8"> <style> .nav{height:40px; width: 100%;background: #e6e6e6;} .nav ul li{float: left;list-style: none;margin-right: 20px;line-height: 40px;} .nav ul li a{text-decoration: none; display: block;width: 60px; text-align: center;} .onnav{font-weight: bold;color:#fff; background: #ccc;} </style> </head> <body> <p class="nav"> <ul> <li><a href="#" class="onnav">首页</a></li> <li><a href="#">博客</a></li> <li><a href="#">论坛</a></li> <li><a href="#">关于</a></li> <li><a href="#">联系</a></li> </ul> </p> <script type="text/javascript"> $(".nav ul li a").click(function(){if($(this).has(".onnav")){ $(this).addclass("onnav").parent("li").siblings("li").find("a").removeclass("onnav");}}) </script> </body> </html>
js部分:
复制代码 代码如下:
<script type="text/javascript"> $(".nav ul li a").click(function(){if($(this).has(".onnav")){ //找到a标签添加click事件,判断是否有背景存在 $(this).addclass("onnav").parent("li").siblings("li").find("a").removeclass("onnav");}}) //添加类并移除已有的类 </script>
上面是一种方法,以下是另外一种:
复制代码 代码如下:
<script type="text/javascript"> $(".nav ul li a").click(function(){ //找到a标签并添加click事件 var inx = $(this).parent("li").index(); //定义变量inx,返回这个元素在同辈中的索引位置 $(".nav ul li").find("a").removeclass("on_nav"); //移除已有的类 $(".nav ul li").eq(inx).find("a").addclass("on_nav"); //获取点击元素并添加类 </script>
以上就是jquery实现导航条背景切换效果的代码分享的详细内容。
