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 相关文章推荐
Auntion-TableSort国人写的一个javascript表格排序的东西
Nov 12 Javascript
window.location和document.location的区别分析
Dec 23 Javascript
ExtJS GTGrid 简单用户管理
Jul 01 Javascript
Jquery实战_读书笔记2 选择器
Jan 22 Javascript
js中一维数组和二位数组中的几个问题示例说明
Jul 17 Javascript
10分钟学会写Jquery插件实例教程
Sep 06 Javascript
jQuery使用$.ajax进行即时验证的方法
Dec 08 Javascript
Vue.js动态组件解析
Sep 09 Javascript
JSP防止网页刷新重复提交数据的几种方法
Nov 19 Javascript
angularjs实现柱状图动态加载的示例
Dec 11 Javascript
Vue引入sass并配置全局变量的方法
Jun 27 Javascript
Vue SPA单页应用首屏优化实践
Jun 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
第十二节 类的自动加载 [12]
2006/10/09 PHP
PHP自定义大小验证码的方法详解
2013/06/07 PHP
实例讲解PHP面向对象之多态
2014/08/20 PHP
PHP常用编译参数中文说明
2014/09/27 PHP
php将access数据库转换到mysql数据库的方法
2014/12/24 PHP
轻松实现php文件上传功能
2017/02/17 PHP
PHP简单读取xml文件的方法示例
2017/04/20 PHP
使用PHP+MySql实现微信投票功能实例代码
2017/09/29 PHP
PHP 爬取网页的主要方法
2018/07/13 PHP
JavaScipt基本教程之前言
2008/01/16 Javascript
jQuery使用andSelf()来包含之前的选择集
2014/05/19 Javascript
基于AngularJS实现页面滚动到底自动加载数据的功能
2015/10/16 Javascript
jquery zTree异步加载简单实例讲解
2016/02/25 Javascript
JavaScript通过使用onerror设置默认图像显示代替alt
2016/03/01 Javascript
JS把内容动态插入到DIV的实现方法
2016/07/19 Javascript
前端开发之CSS原理详解
2017/03/11 Javascript
Vue项目中引入外部文件的方法(css、js、less)
2017/07/24 Javascript
Javascript之高级数组API的使用实例
2019/03/08 Javascript
解决IOS端微信H5页面软键盘弹起后页面下方留白的问题
2019/06/05 Javascript
webpack是如何实现模块化加载的方法
2019/11/06 Javascript
Openlayers测量距离与面积的实现方法
2020/09/25 Javascript
[01:11:35]Liquid vs LGD 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
Python实现把回车符\r\n转换成\n
2015/04/23 Python
numpy中loadtxt 的用法详解
2018/08/03 Python
python opencv 读取图片 返回图片某像素点的b,g,r值的实现方法
2019/07/03 Python
如何利用Python 进行边缘检测
2020/10/14 Python
lookfantastic荷兰:在线购买奢华护肤、护发和化妆品
2018/11/27 全球购物
意大利中国电子产品购物网站:Geekmall.com
2019/09/30 全球购物
非常详细的C#面试题集
2016/07/13 面试题
小学新教师培训方案
2014/02/03 职场文书
《长相思》听课反思
2014/04/10 职场文书
《特殊的葬礼》教学反思
2014/04/27 职场文书
广播体操口号
2014/06/18 职场文书
2015年幼儿教师个人工作总结
2015/05/20 职场文书
会议室管理制度范本
2015/08/06 职场文书
上手简单,功能强大的Python爬虫框架——feapder
2021/04/27 Python