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 相关文章推荐
url 编码 js url传参中文乱码解决方案
Apr 11 Javascript
JS中 用户登录系统的解决办法
Apr 15 Javascript
js图片闪动特效可以控制间隔时间如几分钟闪动一下
Aug 12 Javascript
jQuery中next方法用法实例
Apr 24 Javascript
javascript绘制漂亮的心型线效果完整实例
Feb 02 Javascript
javascript 用函数实现继承详解
May 28 Javascript
jQuery实现订单提交页发送短信功能前端处理方法
Jul 04 Javascript
浅谈JS读取DOM对象(标签)的自定义属性
Nov 21 Javascript
jQuery居中元素scrollleft计算方法示例
Jan 16 Javascript
JavaScrip关于创建常量的知识点
Dec 07 Javascript
angular.js和vue.js中实现函数去抖示例(debounce)
Jan 18 Javascript
vue+elementUI(el-upload)图片压缩,默认同比例压缩操作
Aug 10 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的历史和优缺点
2006/10/09 PHP
PHP使用header()输出图片缓存实例
2014/12/09 PHP
PHP实现时间比较和时间差计算的方法示例
2017/07/24 PHP
thinkphp 中的volist标签在ajax操作中的特殊性(推荐)
2018/01/15 PHP
Javascript的一种模块模式
2008/03/22 Javascript
Javascript 篱式条件判断
2008/08/22 Javascript
JS验证身份证有效性示例
2013/10/11 Javascript
js AppendChild与insertBefore用法详细对比
2013/12/16 Javascript
node.js中的http.response.write方法使用说明
2014/12/14 Javascript
js全选实现和判断是否有复选框选中的方法
2015/02/17 Javascript
javascript实现随时变化着的背景颜色
2015/04/02 Javascript
javascript中CheckBox全选终极方案
2015/05/20 Javascript
jquery实现的回旋滚动效果完整实例【附demo源码下载】
2016/09/20 Javascript
html中鼠标滚轮事件onmousewheel的处理方法
2016/11/11 Javascript
canvas实现弧形可拖动进度条效果
2017/05/11 Javascript
angular.js指令中transclude选项及ng-transclude指令详解
2017/05/24 Javascript
详解如何在 vue 项目里正确地引用 jquery 和 jquery-ui的插件
2017/06/01 jQuery
vue 系列——vue2-webpack2框架搭建踩坑之路
2017/12/22 Javascript
Python的Flask框架中的Jinja2模板引擎学习教程
2016/06/30 Python
Python探索之ModelForm代码详解
2017/10/26 Python
Python使用matplotlib实现绘制自定义图形功能示例
2018/01/18 Python
python微信聊天机器人改进版(定时或触发抓取天气预报、励志语录等,向好友推送)
2019/04/25 Python
Python基本数据结构之字典类型dict用法分析
2019/06/08 Python
Django使用模板后无法找到静态资源文件问题解决
2019/07/19 Python
pytorch加载自定义网络权重的实现
2020/01/07 Python
Python使用pyyaml模块处理yaml数据
2020/04/14 Python
高山背包:High Sierra
2017/11/23 全球购物
渗透攻击的测试步骤
2014/06/07 面试题
大学生毕业的自我评价分享
2014/01/02 职场文书
自荐信如何制作?
2014/02/21 职场文书
影子教师研修方案
2014/06/14 职场文书
新闻传播专业求职信
2014/07/22 职场文书
村主任“四风”问题个人整改措施
2014/10/04 职场文书
西柏坡导游词
2015/02/05 职场文书
上市公司财务总监岗位职责
2015/04/03 职场文书
幼儿园科学课教学反思
2016/03/03 职场文书