学习javascript面向对象 实例讲解面向对象选项卡


Posted in Javascript onJanuary 04, 2016

本文实例讲解了最简单的面向对象选项卡实现方法,分享给大家供大家参考,具体内容如下

效果图:

学习javascript面向对象 实例讲解面向对象选项卡

1、功能说明

点击三个按钮分别显示对应的选项卡
2、html代码说明

<div class="box" id="box">
 <ul class="list">
  <li class="in_active">第一张选项卡</li>
  <li class="in">第二张选项卡</li>
  <li class="in">第三张选项卡</li>
 </ul>
 <nav class="conList">
  <a class="con_active" href="javascript:;">第一个控制按钮</a>
  <a class="con" href="javascript:;">第二个控制按钮</a>
  <a class="con" href="javascript:;">第三个控制按钮</a>
 </nav> 
</div>

3、css重点代码说明

/*in为选项卡普通状态,默认不显示*/
.in,.in_active{
 display: none;
 width: 600px;
 height: 100px;
 background: orange;
 font-size: 50px;
 line-height: 100px;
 text-align: center;
}
/*in_active为选项卡选中状态,选中后显示*/
.in_active{
 display: block;
}
/*con为按钮普通状态,默认文字颜色为黑色*/
.con,.con_active{
 color: black;
 background-color: orange;
}
/*con_active为按钮选中状态,选中后文字颜色为白色*/
.con_active{
 color: white; 
}

4、js代码说明

function Tab(obj){
 /*元素获取*/
 //获取选项卡展示部分
 this.oList = obj.getElementsByTagName('ul')[0];
 this.aIn = this.oList.getElementsByTagName('li');
 //获取选项卡控制部分
 this.oConList = obj.getElementsByTagName('nav')[0];
 this.aCon = this.oConList.getElementsByTagName('a');
 /*变量设置*/
 //选项卡张数
 this.count = this.aIn.length;
 //当前第几张
 this.cur = 0;
 var _this = this;

 for(var i = 0; i < this.count; i++){
  //设置索引
  this.aCon[i].index = i;
  //给按钮添加事件
  this.aCon[i].onclick = function(){
   _this.cur = this.index;
   _this.switch();
  }
 }
}
Tab.prototype.switch = function(){
 //去掉所有
 for(var i = 0; i < this.count; i++){
  this.aIn[i].className = 'in';
  this.aCon[i].className = 'con';
 }
 //显示当前
 this.aIn[this.cur].className = 'in_active';
 this.aCon[this.cur].className = 'con_active'; 
}
//获取选项卡元素
var oBox = document.getElementById('box');
//构造选项卡对象
var tab1 = new Tab(oBox);

希望本文所述对大家学习javascript面向对象有所帮助。

Javascript 相关文章推荐
基于jQuery的固定表格头部的代码(IE6,7,8测试通过)
May 18 Javascript
javascript动画之圆形运动,环绕鼠标运动作小球
Jul 20 Javascript
JavaScript具有类似Lambda表达式编程能力的代码(改进版)
Sep 14 Javascript
jquery星级插件、支持页面中多次使用
Mar 25 Javascript
javaScript让文本框内的最后一个文字的后面获得焦点实现代码
Jan 06 Javascript
assert()函数用法总结(推荐)
Jan 25 Javascript
基于Bootstrap框架实现图片切换
Mar 10 Javascript
详解React-Native全球化多语言切换工具库react-native-i18n
Nov 03 Javascript
JS伪继承prototype实现方法示例
Jun 20 Javascript
详解vue指令与$nextTick 操作DOM的不同之处
Aug 02 Javascript
vue项目中实现的微信分享功能示例
Jan 21 Javascript
webpack3.0升级4.0的方法步骤
Apr 02 Javascript
学习javascript面向对象 javascript实现继承的方式
Jan 04 #Javascript
学习javascript面向对象 掌握创建对象的9种方式
Jan 04 #Javascript
jQuery自动完成插件completer附源码下载
Jan 04 #Javascript
学习javascript面向对象 理解javascript对象
Jan 04 #Javascript
基于JavaScript实现移除(删除)数组中指定元素
Jan 04 #Javascript
实例代码详解javascript实现窗口抖动及qq窗口抖动
Jan 04 #Javascript
javascript基础语法学习笔记
Jan 04 #Javascript
You might like
各种咖啡的英文名子是什么
2021/03/03 新手入门
PHP源代码数组统计count分析
2011/08/02 PHP
php实现查看邮件是否已被阅读的方法
2013/12/03 PHP
LaravelS通过Swoole加速Laravel/Lumen详解
2018/03/02 PHP
如何让动态插入的javascript脚本代码跑起来。
2007/01/09 Javascript
用一段js程序来实现动画功能
2007/03/06 Javascript
如何在一个页面显示多个百度地图
2013/04/07 Javascript
sencha touch 模仿tabpanel导航栏TabBar的实例代码
2013/10/24 Javascript
JavaScript实现两个Table固定表头根据页面大小自行调整
2014/01/03 Javascript
利用JQuery制作符合Web标准的QQ弹出消息
2014/01/14 Javascript
jQuery实现的Div窗口震动效果实例
2015/08/07 Javascript
js实现正则匹配中文标点符号的方法
2015/12/23 Javascript
JavaScript之map reduce_动力节点Java学院整理
2017/06/29 Javascript
angular+ionic返回上一页并刷新页面
2017/08/08 Javascript
JavaScript闭包的简单应用
2017/09/01 Javascript
ES6中字符串string常用的新增方法小结
2017/11/07 Javascript
为什么使用koa2搭建微信第三方公众平台的原因
2018/05/16 Javascript
react-native android状态栏的实现
2018/06/15 Javascript
vue-router权限控制(简单方式)
2018/10/29 Javascript
新手快速上手webpack4打包工具的使用详解
2019/01/28 Javascript
原生js实现文件上传、下载、封装等实例方法
2020/01/05 Javascript
利用QT写一个极简单的图形化Python闹钟程序
2015/04/07 Python
Python3读取zip文件信息的方法
2015/05/22 Python
Python输出9*9乘法表的方法
2015/05/25 Python
详解tensorflow实现迁移学习实例
2018/02/10 Python
查看django版本的方法分享
2018/05/14 Python
对python遍历文件夹中的所有jpg文件的实例详解
2018/12/08 Python
Python使用xpath实现图片爬取
2020/09/16 Python
CSS3的Border-radius轻松制作圆角
2012/12/24 HTML / CSS
CSS3 二级导航菜单的制作的示例
2018/04/02 HTML / CSS
商业融资计划书
2014/04/29 职场文书
社会稳定风险评估方案
2014/06/02 职场文书
学校周年庆活动方案
2014/08/22 职场文书
幼儿园小班见习报告
2014/10/31 职场文书
2019最新校园运动会广播稿!
2019/06/28 职场文书
CSS3 实现NES游戏机的示例代码
2021/04/21 HTML / CSS