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 相关文章推荐
让人期待的2011年度最佳 jQuery 插件分享
Mar 16 Javascript
jquery中$.post()方法的简单实例
Feb 04 Javascript
js实现二代身份证号码验证详解
Nov 20 Javascript
Bootstrap图片轮播组件使用实例解析
Jun 30 Javascript
使用vue.js实现checkbox的全选和多个的删除功能
Feb 17 Javascript
ES6解构赋值的功能与用途实例分析
Oct 31 Javascript
微信小程序网络请求封装示例
Jul 24 Javascript
jQuery实现左右两个列表框的内容相互移动功能示例
Jan 27 jQuery
微信小程序点击保存图片到本机功能
Dec 13 Javascript
jQuery实现手风琴效果(蒙版)
Jan 11 jQuery
在vue中使用vant TreeSelect分类选择组件操作
Nov 02 Javascript
利用 JavaScript 实现并发控制的示例代码
Dec 31 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
php源码加密 仿微盾PHP加密专家(PHPCodeLock)
2010/05/06 PHP
php禁止某ip或ip地址段访问的方法
2015/02/25 PHP
PHP实现的构造sql语句类实例
2016/02/03 PHP
php 根据自增id创建唯一编号类
2017/04/06 PHP
PHP实现时间日期友好显示实现代码
2019/09/08 PHP
javascript中获取选中对象的类型
2007/04/02 Javascript
js获取当前日期前七天的方法
2015/02/28 Javascript
js实现同一个页面多个渐变效果的方法
2015/04/10 Javascript
简单学习JavaScript中的for语句循环结构
2015/11/10 Javascript
JS设置cookie、读取cookie
2016/02/24 Javascript
jQuery ui autocomplete选择列表被Bootstrap模态窗遮挡的完美解决方法
2016/09/23 Javascript
AngularJS辅助库browserTrigger用法示例
2016/11/03 Javascript
JavaScript通过改变文字透明度实现的文字闪烁效果实例
2017/04/27 Javascript
es7学习教程之fetch解决异步嵌套问题的方法示例
2017/07/21 Javascript
vue.js整合vux中的上拉加载下拉刷新实例教程
2018/01/09 Javascript
vue 路由页面之间实现用手指进行滑动的方法
2018/02/23 Javascript
JQuery实现ajax请求的示例和注意事项
2018/12/10 jQuery
简单掌握Python中glob模块查找文件路径的用法
2016/07/05 Python
python使用super()出现错误解决办法
2017/08/14 Python
Python中使用haystack实现django全文检索搜索引擎功能
2017/08/26 Python
python复制文件到指定目录的实例
2018/04/27 Python
Pandas Shift函数的基础入门学习笔记
2018/11/16 Python
对Python中创建进程的两种方式以及进程池详解
2019/01/14 Python
Python除法之传统除法、Floor除法及真除法实例详解
2019/05/23 Python
python操作文件的参数整理
2019/06/11 Python
详解python中eval函数的作用
2019/10/22 Python
python随机生成库faker库api实例详解
2019/11/28 Python
Marlies Dekkers内衣法国官方网上商店:国际知名的荷兰内衣品牌
2019/03/18 全球购物
HashMap和Hashtable的区别
2013/05/18 面试题
SOA的常见陷阱或者误解是什么
2014/10/05 面试题
文化与传播毕业生求职信
2014/03/09 职场文书
2015年幼儿园中班开学寄语
2015/05/27 职场文书
2016国培学习心得体会
2016/01/08 职场文书
幽默口才训练经典句子(48句)
2019/08/19 职场文书
高性能跳频抗干扰宽带自组网电台
2022/02/18 无线电
td 内容自动换行 table表格td设置宽度后文字太多自动换行
2022/12/24 HTML / CSS