基于javascript实现tab选项卡切换特效调试笔记
作者:lijiao 发布时间:2024-06-12 13:48:02
标签:javascript,tab,切换
本文实例为大家分析了javascript实现tab选项卡切换的调试笔记,供大家参考,具体内容如下
制作导航栏,点击导航栏元素时下面的内容会产生相应的变化,并且该元素显示特殊样式。
js源代码:
//导航栏单击变换内容
function tabSwitch(_this,num) {
var tag = document.getElementById("nav9");
var number = tag.getElementsByTagName("a"); //获取导航栏元素个数(getElementsByTagName是返回元素素组)
var divNum = document.getElementsByClassName("eachDiv"); //获取导航元素对应的div个数
for(var i=0;i<number.length;i++){ //number是一个数组,这里应该用number.length显示它的长度5
number[i].className = " "; //清除所有导航栏元素的特殊样式
divNum[i].style.display = "none"; //其他所有div都隐藏
}
_this.className = "l_nav1_no1"; //给当前导航栏元素添加样式
var content = document.getElementById("l_no2_"+num); //当前导航栏元素对应的div
content.style.display = "block"; //显示当前导航栏元素对应的div部分
}
HTML代码:
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<script type="text/javascript" src="../MyJS/hao123.js"></script>
<style type="text/css">
.l_nav1 {
height: 30px;
padding-top: 8px;
}
.l_nav1 a{
color: #3C3C3C;
text-decoration: none;
padding: 8px;
}
.l_nav1 a:hover,#l_nav1 a:active {
color: green;
text-decoration: underline;
}
.l_nav1 .l_nav1_no1 { /*“头条”*/
color: green;
text-decoration: none;
border-top: solid 1px green;
}
.l_no2 {
background-color: #ffffff;
border: solid 1px #E0E0E0;
height: 282px;
width: 276px;
overflow: scroll; /*当元素内容太大而超出规定区域时,内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容。。*/
}
.l_no2 ul{ /*列表部分*/
padding-left: 0px;
line-height: 25px;
font-size: 14px;;
}
.l_no2 ul li{
list-style: none;
}
.l_no2 ul a{
color: #3C3C3C;
text-decoration: none;
}
.l_no2 ul a:active,.l_no2 ul a:hover {
color: red;
text-decoration: underline;
}
</style>
</head>
<body>
<nav id="nav9" class="l_nav1">
<a href="#" onclick="tabSwitch(this,1)" class="l_nav1_no1">头条</a>
<a href="#" onclick="tabSwitch(this,2)">社会</a>
<a href="#" onclick="tabSwitch(this,3)">娱乐</a>
<a href="#" onclick="tabSwitch(this,4)">军事</a>
<a href="#" onclick="tabSwitch(this,5)">体育</a>
</nav>
<div class="l_no2">
<div id="l_no2_1" class="eachDiv" style="display: block"> <!--默认为该div显示-->
<img src="../images/hao123/25.jpg" width="274px">
<ul>
<li><strong style="color: #6C6C6C">·</strong><a href="#">县领导找不着住建局长 对其通报批评</a></li>
<li><strong style="color: #6C6C6C">·</strong><a href="#">女子亲热感觉"卡" 检查现"异形"侵体</a></li>
<li><strong style="color: #6C6C6C">·</strong><a href="#">大妈被女童玩具小车撞到 叫来救护车</a></li>
<li><strong style="color: #6C6C6C">·</strong><a href="#">六旬老人遇老相识 30元 * 被抓</a></li>
</ul>
</div>
<div id="l_no2_2" class="eachDiv" style="display: none">
<img src="../images/hao123/25.2.jpg" width="274px">
<ul>
<li><strong style="color: #6C6C6C">·</strong><a href="#">妻子产子收1200枚鸡蛋 丈夫1天卖光</a></li>
<li><strong style="color: #6C6C6C">·</strong><a href="#">母猪产下八名男婴 原因竟然如此凄凉</a></li>
<li><strong style="color: #6C6C6C">·</strong><a href="#">小夫妻宾馆开房 隔壁大叔全程看直播</a></li>
<li><strong style="color: #6C6C6C">·</strong><a href="#">老汉自造房车囚禁两妙龄女 边走边玩</a></li>
</ul>
</div>
<div id="l_no2_3" class="eachDiv" style="display: none">
<img src="../images/hao123/25.3.jpg" width="274px">
<ul>
<li><strong style="color: #6C6C6C">·</strong><a href="#">金星追问陈坤儿子生母 他还真招认了</a></li>
<li><strong style="color: #6C6C6C">·</strong><a href="#">台湾女星“酒后乱性” 婆婆当场傻眼</a></li>
<li><strong style="color: #6C6C6C">·</strong><a href="#">车晓和前夫离婚后 如此评价这段经历</a></li>
<li><strong style="color: #6C6C6C">·</strong><a href="#">韩国卖 * 星身份遭曝光!G.NA在列</a></li>
</ul>
</div>
<div id="l_no2_4" class="eachDiv" style="display: none">
<img src="../images/hao123/25.4.jpg" width="274px">
<ul>
<li><strong style="color: #6C6C6C">·</strong><a href="#">朝鲜愤然击落美军侦察机 美为何认怂</a></li>
<li><strong style="color: #6C6C6C">·</strong><a href="#">多数人不知道 中国已经买过四艘航母</a></li>
<li><strong style="color: #6C6C6C">·</strong><a href="#">中国两栖登陆王牌协同作战 场面壮观</a></li>
<li><strong style="color: #6C6C6C">·</strong><a href="#">朝鲜惊人作战计划曝光:突袭朴槿惠</a></li>
</ul>
</div>
<div id="l_no2_5" class="eachDiv" style="display: none">
<img src="../images/hao123/25.5.jpg" width="274px">
<ul>
<li><strong style="color: #6C6C6C">·</strong><a href="#">末战胜卡塔尔不够 国足期待2队犯错</a></li>
<li><strong style="color: #6C6C6C">·</strong><a href="#">赛中产子属误传 产妇是辽宁女排队员</a></li>
<li><strong style="color: #6C6C6C">·</strong><a href="#">球迷50万赌国足赢4球以上 血本无归</a></li>
<li><strong style="color: #6C6C6C">·</strong><a href="#">高洪波:国足只能算一般队 比较命苦</a></li>
</ul>
</div>
</div>
</body>
</html>
效果图:
调试笔记:
1.错误一:
var number = tag.getElementsByTagName("a").length;
(1)报错:
(2)解释及改正:
**getElementsByTagName()就是返回元素素组,如果再取它的长度的话,number就只是一个数字,所以number[i].className = " ";就会报错。**
改正:
var number = tag.getElementsByTagName("a");
2.错误二:
for(var i=0;i<number;i++){
number[i].className = " "; //清除所有导航栏元素的特殊样式
divNum[i].style.display = "none"; //其他所有div都隐藏
}
这里的number应该是一个数字,代表a元素的个数,由错误一可知,获取number的长度,即应该改为:
for(var i=0;i<number.length;i++){ //number是一个数组
number[i].className = " "; //清除所有导航栏元素的特殊样式
divNum[i].style.display = "none"; //其他所有div都隐藏
}


猜你喜欢
- 运行时请在其目录下添加user.txt passwd.txt两文件。否则会报错。程序没有加异常处理。代码比较挫.....#coding:ut
- 本文实例为大家分享了python计算日期之间的放假日期,供大家参考,具体内容如下代码如下:#encoding=utf-8 print
- 本文实例讲述了Vue + Node.js + MongoDB图片上传组件实现图片预览和删除功能。分享给大家供大家参考,具体如下:公司要写一些
- 本文实例为大家分享了Python实现双人五子棋对局的具体代码,供大家参考,具体内容如下效果:自己需要两个棋子:服务器玩家全部代码:# 案列使
- 一、导言导语:在计算机进行数据交换时,常常会有一个进制转换的过程,我们知道计算机只认0 和 1.在内存系统中,基本基于二进制进行运算的,但是
- 一、绘制带趋势线的散点图实现功能:在散点图上添加趋势线(线性拟合线)反映两个变量是正相关、负相关或者无相关关系。实现代码:import pa
- 需求:序列化外键,获取外键的除id之外的值使用Django REST Framework虽然开发接口快速,但是如果想要获取到除外键id值之外
- 一、视图的基本概念视图是用于查询的另外一种方式。 与实际的表不同,它是一个虚表;因此数据库中只存在视图的定义,而不存在视图中相对应的数据,数
- 1、解决方法(1)忽视元组。缺少类别标签时,通常这样做(假设挖掘任务与分类有关),除非元组有多个属性缺失值,否则该方法不太有效。当个属性缺值
- 定时器1-"*/5 * * * * *"package mainimport ("fmt""
- 本站收集的js实现的同步动态显示当前日期,时间和星期几的代码,我经常用在自己做的企业网站的后台,方便嘛。效果可以看看本站的首页,呵呵!而且代
- 本文实例讲述了Python实现的逻辑回归算法。分享给大家供大家参考,具体如下:使用python实现逻辑回归Using Python to I
- 一、requests库1、requests简介requests库就是一个发起请求的第三方库,requests允许你发送HTTP/1.1 请求
- 本文实例讲述了Go语言中的range用法。分享给大家供大家参考。具体如下:for 循环的 range 格式可以对 slice 或者 map
- 与上篇实践教程一样,在这篇文章中,我将继续从一种常见的功能——表格入手,展示Vue.js中的一些优雅特性。同时也将对filter功能与com
- Merge函数的用法简单来说Merge函数相当于Excel中的vlookup函数。当我们对2个表进行数据合并的时候需要通过指定两个表中相同的
- 我就废话不多说了,直接上代码吧!其实也不难,使用tertools.chain将参数链接起来即可import itertools...self
- 1.乘法和幂运算符● 单个 * 用于乘法运算● 两个 ** 表示幂运算>>> 2*3>>> 6>&
- 前言1992年扫雷被加入到windows3.1,成为早期windows的经典游戏。近来接触python的GUI(图形化)编程,于是通过编写扫
- Python需要使用标识符给变量命名,其实标识符就是用于给程序中变量、类、方法命名的符号(简单来说,标识符就是合法的名称标识符需要以字母或下