学习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 相关文章推荐
js从外部获取图片的实现方法
Aug 05 Javascript
Angular2 环境配置详细介绍
Sep 21 Javascript
从零开始最小实现react服务器渲染详解
Jan 26 Javascript
[原创]jQuery实现合并/追加数组并去除重复项的方法
Apr 11 jQuery
基于vue2.0实现仿百度前端分页效果附实现代码
Oct 30 Javascript
Angular中使用ng-zorro图标库部分图标不能正常显示问题
Apr 22 Javascript
jquery+php后台实现省市区联动功能示例
May 23 jQuery
Angular.JS读取数据库数据调用完整实例
Jul 02 Javascript
js简单的分页器插件代码实例
Sep 11 Javascript
Vue 图片压缩并上传至服务器功能
Jan 15 Javascript
vue前端和Django后端如何查询一定时间段内的数据
Feb 28 Vue.js
react国际化react-intl的使用
May 06 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
用Zend Encode编写开发PHP程序
2010/02/21 PHP
PHP字符串函数系列之nl2br(),在字符串中的每个新行 (\n) 之前插入 HTML 换行符br
2011/11/10 PHP
php实现信用卡校验位算法THE LUHN MOD-10示例
2014/05/07 PHP
Yii2框架使用计划任务的方法
2016/05/25 PHP
PHP用swoole+websocket和redis实现web一对一聊天
2019/11/05 PHP
HR vs CL BO3 第一场 2.13
2021/03/10 DOTA
jquery trim() 功能源代码
2011/02/14 Javascript
JS函数实现动态添加CSS样式表文件
2012/12/15 Javascript
javascript对select标签的控制(option选项/select)
2013/01/31 Javascript
JS中prototype关键字的功能介绍及使用示例
2013/07/21 Javascript
js setTimeout 参数传递使用介绍
2013/08/13 Javascript
点击表单提交时出现jQuery没有权限的解决方法
2014/07/23 Javascript
javascript操作符&quot;!~&quot;详解
2015/02/10 Javascript
再谈JavaScript线程
2015/07/10 Javascript
js图片卷帘门导航菜单特效代码分享
2015/09/10 Javascript
js实现搜索框关键字智能匹配代码
2020/03/26 Javascript
jQuery常用的一些技巧汇总
2016/03/26 Javascript
js实现楼层导航功能
2017/02/23 Javascript
Vue 中使用 CSS Modules优雅方法
2018/04/09 Javascript
vue-cli 如何打包上线的方法示例
2018/05/08 Javascript
vue组件中的数据传递方法
2018/05/14 Javascript
JavaScript实现的拼图算法分析
2019/02/13 Javascript
vue+express+jwt持久化登录的方法
2019/06/14 Javascript
Python实现读取并保存文件的类
2017/05/11 Python
Python将文本去空格并保存到txt文件中的实例
2018/07/24 Python
python3让print输出不换行的方法
2020/08/24 Python
一款利用css3的鼠标经过动画显示详情特效的实例教程
2014/12/29 HTML / CSS
英国殿堂级有机护肤品牌:Rodial
2017/04/17 全球购物
abstract 可以和 virtual 一起使用吗?可以和 override 一起使用吗?
2012/10/15 面试题
物流毕业生个人的自我评价
2014/02/13 职场文书
2014年自愿离婚协议书范本
2014/09/25 职场文书
党的群众路线教育实践活动学习笔记范文
2014/11/06 职场文书
长城的导游词
2015/01/30 职场文书
督导岗位职责范本
2015/04/10 职场文书
超级实用!五步法则,教你写好年终工作总结
2019/12/05 职场文书
golang 实现并发求和
2021/05/08 Golang