jQuery关于导航条背景切换效果实现示例

前端技术 2023/09/07 JavaScript
效果如下:
 
复制代码 代码如下:

<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>
<div 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>
</div>
<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>

本文地址:https://www.stayed.cn/item/19833

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。