JS初学之-选项卡(常见)
思路:鼠标滑过的效果直接用a:hover实现的,比较简便,缺点是在IE下不兼容。
为每一个Li添加点击事件,将每一个li用自定义属性的方法与div相匹配,重点是在点击事件内,要先遍历每一个div,使之display:none,然后在事件外写每一个div display:block;这就是所谓的思路:
1、全部清空,当前添加
for(var i=0;i<aBtn.length;i++){
aBtn[i].className='';
};
this.className='active';

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
<style>
*{padding:0;margin:0;}
a{text-decoration:none;}
li{list-style:none;}
.clear:after{content:"";display:block;clear:both;}
.clear{zoom:1;}
#box{width:765px;margin:0 auto;font-size:12px;padding:15px 19px 0 6px;background:#fdf8f1;}
#box h2{font-size:15px;color:867c7b;}
.head{border-bottom:2px solid transparent;}
.head li{width:100px;height:23px;line-height:23px;text-align:center;float:left;margin-left:1px;background:#eaddcc;margin-top:7px;}
.head:hover{border-bottom:2px solid #806f66;}
.head a{color:#595959;display:block;}
.head a:hover{background:#806f66;color:#fff;}
#box div{width:520px;padding:16px 69px 20px 97px;background:url(images/images/images/2-tmall_03.jpg) no-repeat 35px 19px;line-height:20px;border-top:1px solid #e3e3e3;display:none}
</style>
<script>
window.onload=function(){
var oDiv=document.getElementById('box');
var oUl=oDiv.getElementsByTagName('ul')[0];
var aLi=oUl.getElementsByTagName('li');
var aDiv=oDiv.getElementsByTagName('div');
for(var i=0;i<aLi.length;i++){
aLi[i].index=i;
aLi[i].onclick=function(){
for(var i=0;i<aDiv.length;i++){
aDiv[i].style.display='';
};
aDiv[this.index].style.display='block';
};
};
};
</script>
</head>
<body>
<div id="box">
<h2>消息盒子</h2>
<ul class="head clear">
<li><a href="javascript:;">未读</a></li>
<li><a href="javascript:;">全部</a></li>
<li><a href="javascript:;">我的成长</a></li>
<li><a href="javascript:;">特权活动</a></li>
<li><a href="javascript:;">系统消息</a></li>
<li><a href="javascript:;">其他</a></li>
</ul>
<div style="display:block">
<p><strong>天猫俱乐部:未读</strong> </br>
<span style="color:#666; font-weight:bold">天猫达人经验值发放成功</span> <span style="color:#666" >您上个月购买天猫产品,总共获得1600点天猫达人经验值,已经发放成功!查看天猫达人值经验请</span>
<a href="#"><strong style="color:#806f66;text-decoration:underline">点此查看</strong></a> </br>
<span style="color:#b5b4b3; line-height:30px;">2013年10月3日</span>
</p>
</div>
<div>
<p><strong>天猫俱乐部:全部</strong> </br>
<span style="color:#666; font-weight:bold">天猫达人经验值发放成功</span> <span style="color:#666" >您上个月购买天猫产品,总共获得1600点天猫达人经验值,已经发放成功!查看天猫达人值经验请</span>
<a href="#"><strong style="color:#806f66;text-decoration:underline">点此查看</strong></a> </br>
<span style="color:#b5b4b3; line-height:30px;">2013年10月3日</span>
</p>
</div>
<div>
<p><strong>天猪俱乐部:我的成长</strong> </br>
<span style="color:#666; font-weight:bold">天猫达人经验值发放成功</span> <span style="color:#666" >您上个月购买天猫产品,总共获得1600点天猫达人经验值,已经发放成功!查看天猫达人值经验请</span>
<a href="#"><strong style="color:#806f66;text-decoration:underline">点此查看</strong></a> </br>
<span style="color:#b5b4b3; line-height:30px;">2013年10月3日</span>
</p>
</div>
<div>
<p><strong>天猪俱乐部:特权活动</strong> </br>
<span style="color:#666; font-weight:bold">天猫达人经验值发放成功</span> <span style="color:#666" >您上个月购买天猫产品,总共获得1600点天猫达人经验值,已经发放成功!查看天猫达人值经验请</span>
<a href="#"><strong style="color:#806f66;text-decoration:underline">点此查看</strong></a> </br>
<span style="color:#b5b4b3; line-height:30px;">2013年10月3日</span>
</p>
</div>
<div>
<p><strong>天猪俱乐部:系统消息</strong> </br>
<span style="color:#666; font-weight:bold">天猫达人经验值发放成功</span> <span style="color:#666" >您上个月购买天猫产品,总共获得1600点天猫达人经验值,已经发放成功!查看天猫达人值经验请</span>
<a href="#"><strong style="color:#806f66;text-decoration:underline">点此查看</strong></a> </br>
<span style="color:#b5b4b3; line-height:30px;">2013年10月3日</span>
</p>
</div>
<div>
<p><strong>天猪俱乐部:其他</strong> </br>
<span style="color:#666; font-weight:bold">天猫达人经验值发放成功</span> <span style="color:#666" >您上个月购买天猫产品,总共获得1600点天猫达人经验值,已经发放成功!查看天猫达人值经验请</span>
<a href="#"><strong style="color:#806f66;text-decoration:underline">点此查看</strong></a> </br>
<span style="color:#b5b4b3; line-height:30px;">2013年10月3日</span>
</p>
</div>
</div>
</body>
</html>
JS初学之-选项卡(常见)的更多相关文章
- JS初学之-选项卡(图片切换类)
初学选项卡,主要问题卡在了索引值上面,花了较长的时间学习. 索引值其实很好理解,就是为每一个元素用JS的方法添加一个属性,即自定义属性. 在for循环里的函数里用i,会直接弹出这个数组的length, ...
- 原生js实现tab选项卡里内嵌图片滚动特效代码
<!DOCTYPE HTML><html lang="en-US"><head><meta charset="UTF-8&quo ...
- Node.js初学
Node.js 初学~ 其技术上最大的卖点是非阻塞的I/O和基于事件的异步处理机制. 后端没有什么深入研究,一直对其不是很了解. 透过一个例子看 非阻塞 与 通常的 阻塞 var text = rea ...
- 【JS中循环嵌套常见的六大经典例题+六大图形题,你知道哪几个?】
首先,了解一下循环嵌套的特点:外层循环转一次,内层循环转一圈. 在上一篇随笔中详细介绍了JS中的分支结构和循环结构,我们来简单的回顾一下For循环结构: 1.for循环有三个表达式,分别为: ①定义循 ...
- JS中几种常见的数组算法(前端面试必看)
JS中几种常见的数组算法 1.将稀疏数组变成不稀疏数组 /** * 稀疏数组 变为 不稀疏数组 * @params array arr 稀疏数组 * @return array 不稀疏的数组 */ f ...
- 纯CSS3完成选项卡,不要js完成的选项卡
我爱撸码,撸码使我感到快乐!大家好,我是Counter.今天就来敲一敲,选项卡,注意哦,不是一般利用js完成的选项卡,今天是纯用HTML和CSS来完成的,这怎么可能?那你不用js的点击事件,怎么处理? ...
- node.js 初学(二)—— 搭建注册/登录服务器
node.js 初学(二)—— 搭建注册/登录服务器 理论上来说,代码实现在理论和实际上是一样的.但实际上来说,他们不是 做一个最简单的用户注册登录功能 1.接口定义: 注册:/user?act=re ...
- node.js 初学(一)—— http fs 服务器/文件/post get
node.js 初学 —— http fs 服务器/文件/post get 这个世界,从来不会给失败者颁奖! 了解 node.js (开源) node.js 是用来做后台开发的,但是现在大部分前端人员 ...
- js进阶 11-22/23 js如何实现选项卡
js进阶 11-22/23 js如何实现选项卡 一.总结 一句话总结:通过索引把选项卡头的li标签和选项卡内容的div标签联系在一起,通过控制div标签的display属性可以实现选项卡的选项切换. ...
随机推荐
- Delphi 的 7zip 压缩算法
http://blog.csdn.net/warrially/article/details/8039915
- Java 类的一般特征
1. 创建类的对象时的内存结构 用图来解释: 使用new 创建 a1 时,成员变量的值都是初始默认值. 然后显式的改变其属性的值. 创建a3 时,a3 是直接指向 a1, 即a3 = a1, 两个对象 ...
- 踏着前人的脚印学hadoop——ipc中的Client
1.Client有五个内部类,分别是Call,ParallelCall,ParallelResult,Connetion,ConnectionId 其实这五个类就是去完成两件事情的,一件事情是连接,另 ...
- SQL with PL/SQL
DDL commands --> create user / table / view / sequence alter DML --> data manipulation languag ...
- Oracle GoldenGate 12c (12.1.2.0.1) for IBM DB2 iSeries
OGG 12.1.2.0.1 for iSeries 在2014.2.15发布,主要新增如下功能: 本地交付(Native Delivery Replicat):新功能允许用户在IBM i服务器上安装 ...
- MVC的传递数据的方法
1.使用ViewBag #region 0.2 Action方法 + ActionResult Index2() /// <summary> /// Action方法 /// </s ...
- stm32的软件架构问题
1. 架构组成:程序代码分为四种结构a) 顺序执行代码定义:按照顺序逐行执行的代码优点:是思路简单,代码可靠不易被干扰.缺点:占用资源用途:只用来各种变量.函数的定义,硬件的初始化程序位置:main. ...
- Ogre中OctreeSceneManager
转自:http://blog.csdn.net/yanonsoftware/article/details/1067265 既然前面分析Mesh(Entity,SceneNode)的渲染时已经看到了O ...
- UNICODE字符集(20140520)
1多字节字符集,如"IT学吧",sizeof内存长度为7,因为前面2个字母各占用一个字节,后面两个汉字各占用2个字节,结尾的\0占用一个字节.strlen即字符串长度的结果为6. ...
- 查看某个html标签有哪些属性和事件
<html><head><script> //查看input标签有哪些属性和事件 function a() { var str = new String(" ...