JS自定义选项卡函数及用法实例分析


Posted in Javascript onSeptember 02, 2015

本文实例讲述了JS自定义选项卡函数及用法。分享给大家供大家参考。具体如下:

这里分享一个JS选项卡函数附带演示效果,选项卡函数参数调用说明:

cmd:点击元素集合
con:显示容器集合
evt:触发事件
css:为当前点击元素的样式名称
index:为默认显示第几项的索引值
目前选项卡的样式还比较简洁和粗糙,想用的自己动动手美化一下。

运行效果截图如下:

JS自定义选项卡函数及用法实例分析

在线演示地址如下:

具体代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Js选项卡</title>
<style type="text/css">
ul,li{ margin:0; padding:0; overflow:hidden; list-style:none; font-family:"Lucida Console", Monaco, monospace}
#tab{ width:300px; height:25px; border:1px solid #ddd}
#tab li{ width:75px; height:25px; line-height:26px; text-align:center; float:left; cursor:pointer}
#tab li.curr{ background:#eee}
#con{ width:300px; border:1px solid #ddd; margin-top:-1px;}
#con li{ display:none; width:280px; height:100px; padding:10px;}
</style>
</head>
<body>
<div id="tab">
 <ul>
  <li>1</li>
  <li>2</li>
  <li>3</li>
  <li>4</li>
 </ul>
</div>
<div id="con">
 <ul>
  <li>a</li>
  <li>b</li>
  <li>c</li>
  <li>d</li>
 </ul>
</div>
<script type="text/javascript">
/*
 选项卡函数:
 cmd:点击元素集合
 con:显示容器集合
 evt:触发事件
 css:为当前点击元素的样式名称
 index:为默认显示第几项的索引值
 email : [email]kingark@163.com[/email]
*/
(function(t){
 window[t] = function(cmd, con, evt, css, index){
   //默认触发事件
  var evt = evt || 'mouseover',
   //默认样式名
   css = css || 'curr',
   index = index || 0;
  //初始化显示项
  show(index);
  //为点击元素绑定事件
  for(var i = 0, l = cmd.length; i < l; i ++){
   //为准确获得i的值用闭包传值
   (function(n){
    cmd[n]['on'+ evt] = function(){
     //切换到索引为i的选项
     show(n);
    }
   })(i);
  };
  //切换显示
  function show(i){
   cmd[index].className = cmd[index].className.replace(css, '');
   con[index].style.display = 'none';
   index = i;
   cmd[index].className += css;
   con[index].style.display = 'block';
  }
 }
//指定选项卡函数的名称
})('Tab');
function tag(i, t){
 return document.getElementById(i).getElementsByTagName(t);
};
//调用选项卡函数
Tab(tag('tab','li'), tag('con','li'), 'click', '', 1);
</script>
</body>
</html>

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

Javascript 相关文章推荐
Jquery 点击按钮自动高亮实现原理及代码
Apr 25 Javascript
自己用jQuery写了一个图片的马赛克消失效果
May 04 Javascript
node.js中的console.info方法使用说明
Dec 09 Javascript
解决jquery实现的radio重新选中的问题
Jul 03 Javascript
jquery动态导航插件dynamicNav用法实例分析
Sep 06 Javascript
Javascript中prototype的使用详解
Jun 18 Javascript
关于js中的鼠标事件总结
Jul 11 Javascript
详解vue-cli 构建项目 vue-cli请求后台接口 vue-cli使用axios、sass、swiper
May 28 Javascript
详解使用jest对vue项目进行单元测试
Sep 07 Javascript
js console.log打印对象时属性缺失的解决方法
May 23 Javascript
小程序如何在不同设备上自适应生成海报的实现方法
Aug 20 Javascript
Openlayers绘制聚合标注
Sep 28 Javascript
js鼠标点击按钮切换图片-图片自动切换-点击左右按钮切换特效代码
Sep 02 #Javascript
jQuery实现自定义右键菜单的树状菜单效果
Sep 02 #Javascript
JavaScript学习小结(一)——JavaScript入门基础
Sep 02 #Javascript
基于dropdown.js实现的两款美观大气的二级导航菜单
Sep 02 #Javascript
JavaScript对象学习小结
Sep 02 #Javascript
JS实现可点击展开与关闭的左侧广告代码
Sep 02 #Javascript
jquery实现华丽的可折角广告代码
Sep 02 #Javascript
You might like
easyui的tabs update正确用法分享
2014/03/21 PHP
php中socket的用法详解
2014/10/24 PHP
深入解析PHP的Yii框架中的缓存功能
2016/03/29 PHP
php mysql like 实现多关键词搜索的方法
2016/10/29 PHP
[原创]php token使用与验证示例【测试可用】
2017/08/30 PHP
PHP7中I/O模型内核剖析详解
2019/04/14 PHP
PHP 使用位运算实现四则运算的代码
2021/03/09 PHP
一个可以显示阴历的JS代码
2007/03/05 Javascript
jQuery ajax BUG:object doesn't support this property or method
2010/07/06 Javascript
js螺旋动画效果的具体实例
2013/11/15 Javascript
FireBug 调试JS入门教程 如何调试JS
2013/12/23 Javascript
js控制浏览器全屏示例代码
2014/02/20 Javascript
JavaScript字符串对象fromCharCode方法入门实例(用于把Unicode值转换为字符串)
2014/10/17 Javascript
JS+CSS实现Li列表隔行换色效果的方法
2015/02/16 Javascript
Bootstrap下拉菜单效果实例代码分享
2016/06/30 Javascript
JavaScript学习笔记整理_setTimeout的应用
2016/09/19 Javascript
微信小程序 Canvas增强组件实例详解及源码分享
2017/01/04 Javascript
性能优化之代码优化页面加载速度
2017/03/01 Javascript
深入理解requireJS-实现一个简单的模块加载器
2018/01/15 Javascript
vue如何截取字符串
2019/05/06 Javascript
vue实现倒计时获取验证码效果
2020/04/17 Javascript
JS数组方法push()、pop()用法实例分析
2020/01/18 Javascript
Ant Design moment对象和字符串之间的相互转化教程
2020/10/27 Javascript
python与C互相调用的方法详解
2017/07/14 Python
python对离散变量的one-hot编码方法
2018/07/11 Python
Python 读写文件的操作代码
2018/09/20 Python
python爬虫实现爬取同一个网站的多页数据的实例讲解
2021/01/18 Python
智能电子秤、手表和健康监测仪:Withings(之前为诺基亚健康)
2018/10/30 全球购物
荷兰家电购物网站:Expert.nl
2020/01/18 全球购物
Oracle中delete,truncate和drop的区别
2016/05/05 面试题
生物科学专业职业规划书范文
2014/02/11 职场文书
环保公益广告语
2014/03/13 职场文书
公务员保密承诺书
2014/03/27 职场文书
家庭暴力离婚起诉书
2015/05/18 职场文书
门卫管理制度范本
2015/08/05 职场文书
导游词之襄阳古城
2019/09/27 职场文书