JS封装的选项卡TAB切换效果示例


Posted in Javascript onSeptember 20, 2016

本文实例讲述了JS封装的选项卡TAB切换效果。分享给大家供大家参考,具体如下:

<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title>JS封装的选项卡TAB代码</title>
<style type="text/css">
*{ padding:0; margin:0;}
.block{ display:block;}
.none{ display:none;}
#wrap,#wraps{ width:500px; height:230px; overflow:hidden; margin:50px auto;}
#diya,#diyas{ list-style:none;}
#diya li,#diyas li{ width:66px; height:28px; border:1px solid #09C; text-align:center; line-height:28px; float:left; cursor:pointer; margin-right:3px;}
#diyas li:hover{ background:#CCC;}
#diya li.on,#diyas li.on{ background:#9C3;}
#wrap div,#wraps div{ width:498px; height:198px; border:1px solid #000;}
</style>
</head>
<body>
<div id="wrap">
<ul id="diya">
<li class="on">第一项</li>
<li>第二项</li>
<li>第三项</li>
</ul>
<br clear="all" />
<div class="block">第一部分</div>
<div class="none">第二部分</div>
<div class="none">第三部分</div>
</div>
<div id="wraps">
<ul id="diyas">
<li class="on">第一项</li>
<li>第二项</li>
<li>第三项</li>
</ul>
<br clear="all" />
<div class="block">第一部分</div>
<div class="none">第二部分</div>
<div class="none">第三部分</div>
</div>
</body>
</html>
<script type="text/javascript">
tab("wrap","diya","mouseover")
tab("wraps","diyas")
function tab(wrap,navul,eve){
//tab效果封装,目前只有两种变换方式,一种为点击事件click(也是默认事件),另外一种为鼠标移过事件mouseover
var divs=document.getElementById(wrap).getElementsByTagName("div");
var lis=document.getElementById(navul).getElementsByTagName("li");
for(var i=0;i<lis.length;i++){
lis[i].indx=i;
if(eve=="click" || eve==null){
lis[i].onclick=function(){
  for(i=0;i<lis.length;i++){
    
    lis[i].className="";
    divs[i].className="none"
    
    this.className="on";
    divs[this.indx].className="block";
    }
  }
}else if(eve=="mouseover"){
  lis[i].onmouseover=function(){
    for(i=0;i<lis.length;i++){
    lis[i].className="";
    divs[i].className="none";
    
    this.className="on";
    divs[this.indx].className="block";
      }
    }
  }
}
}
</script>

运行效果图如下:

JS封装的选项卡TAB切换效果示例

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
深入理解JavaScript系列(7) S.O.L.I.D五大原则之开闭原则OCP
Jan 15 Javascript
Javascript 拖拽的一些简单的应用(逐行分析代码,让你轻松了拖拽的原理)
Jan 23 Javascript
跟我学习javascript的定时器
Nov 19 Javascript
去除html代码里面的script正则方法
May 19 Javascript
Bootstrap轮播插件简单使用方法介绍
Jun 21 Javascript
angularjs的select使用及默认选中设置
Apr 08 Javascript
JS实现给json数组动态赋值的方法示例
Mar 19 Javascript
基于JavaScript实现多级菜单效果
Jul 25 Javascript
利用原生JavaScript实现造日历轮子实例代码
May 08 Javascript
vue如何实现自定义底部菜单栏
Jul 01 Javascript
JavaScript对象原型链原理解析
Jan 22 Javascript
解决vue字符串换行问题(绝对管用)
Aug 06 Javascript
jquery radio的取值_radio的选中_radio的重置方法
Sep 20 #Javascript
JS获取鼠标相对位置的方法
Sep 20 #Javascript
jQuery flip插件实现的翻牌效果示例【附demo源码下载】
Sep 20 #Javascript
jQuery图片前后对比插件beforeAfter用法示例【附demo源码下载】
Sep 20 #Javascript
AngularJS删除路由中的#符号的方法
Sep 20 #Javascript
jQuery实现输入框邮箱内容自动补全与上下翻动显示效果【附demo源码下载】
Sep 20 #Javascript
原生JS取代一些JQuery方法的简单实现
Sep 20 #Javascript
You might like
排序算法之PHP版快速排序、冒泡排序
2014/04/09 PHP
php实现求相对时间函数
2015/06/15 PHP
highchart数据源纵轴json内的值必须是int(详解)
2017/02/20 PHP
PHP使用zlib扩展实现GZIP压缩输出的方法详解
2018/04/09 PHP
php设计模式之工厂方法模式分析【星际争霸游戏案例】
2020/01/23 PHP
JQuery textlimit 显示用户输入的字符数 限制用户输入的字符数
2009/05/14 Javascript
JavaScript prototype属性深入介绍
2012/11/27 Javascript
javascript 模拟坦克大战游戏(html5版)附源码下载
2014/04/08 Javascript
js中的getAttribute方法使用示例
2014/08/01 Javascript
.NET微信公众号开发之创建自定义菜单
2015/07/16 Javascript
Jquery easyui开启行编辑模式增删改操作
2016/01/14 Javascript
全面解析Bootstrap中tooltip、popover的使用方法
2016/06/13 Javascript
JS绘制微信小程序画布时钟
2016/12/24 Javascript
解决vue中无法动态修改jqgrid组件 url地址的问题
2018/03/01 Javascript
详解在vue-test-utils中mock全局对象
2018/11/07 Javascript
Vue动态修改网页标题的方法及遇到问题
2019/06/09 Javascript
vue+echarts实现中国地图流动效果(步骤详解)
2021/01/27 Vue.js
[04:30]显微镜下的DOTA2第五期——拉比克
2013/09/26 DOTA
从零学python系列之数据处理编程实例(二)
2014/05/22 Python
使用APScheduler3.0.1 实现定时任务的方法
2019/07/22 Python
django的分页器Paginator 从django中导入类
2019/07/25 Python
django中使用Celery 布式任务队列过程详解
2019/07/29 Python
python爬取微博评论的实例讲解
2021/01/15 Python
python实现b站直播自动发送弹幕功能
2021/02/20 Python
CSS3盒子模型详解
2013/04/24 HTML / CSS
使用HTML5 Canvas API绘制弧线的教程
2016/03/22 HTML / CSS
捷克家居装饰及图书音像购物网站:Velký košík
2018/04/16 全球购物
Why do we need Unit test
2013/01/03 面试题
护理实习自我鉴定
2013/12/14 职场文书
2014年庆元旦活动方案
2014/02/15 职场文书
部队万能检讨书
2014/02/20 职场文书
闭幕式主持词
2014/04/02 职场文书
旅游安全协议书
2014/04/21 职场文书
综治目标管理责任书
2015/05/11 职场文书
诚信考试主题班会
2015/08/17 职场文书
Django实现drf搜索过滤和排序过滤
2021/06/21 Python