javascript 通用简单的table选项卡实现


Posted in Javascript onMay 07, 2010

第一步:引用table.js

<script type="text/javascript" src="table.js"> </script>

第二步:定义选中的样式,比如“active”,应用选项卡的块的ID,比如“sidebar”,默认被选中的序号,比如第一个“0”;
第三步:调用函数:
<script type="text/javascript"> 
//参数分别为:默认选择项 应用块的id 选中的样式 
table(0, "sidebar", "active") 
</script>

一切OK,选项卡响应click事件,兼任IE和FF,等有时间了再优化,效果如下:
javascript 通用简单的table选项卡实现
HTML源代码如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>New Web Project</title> 
<script type="text/javascript" src="table.js"> </script> 
<style type="text/css"> 
.sidebar { 
width: 140px; 
background: #C9E4D6; 
min-height: 600px; 
float: left; 
border-left: solid 1px #C8C8C8; 
} 
.sidebar ul { 
list-style:none; 
text-align: left; 
padding: 20px 0px 0px 0px; 
} 
.sidebar ul li { 
border-bottom: 1px dotted #C8C8C8; 
font-size: 14px; 
height: 30px; 
line-height: 30px; 
padding-left: 15px; 
margin-left: 15px; 
cursor: pointer; 
} 
.sidebar .active { 
background: #fff; 
} 
</style> 
</head> 
<body> 
<div class="sidebar" id="sidebar"> 
<ul> 
<li> 
选项一 
</li> 
<li> 
选项二 
</li> 
<li> 
选项三 
</li> 
<li> 
选项四 
</li> 
<li> 
选项五 
</li> 
</ul> 
</div> 
</body> 
<script type="text/javascript"> 
//参数分别为:默认选择项 应用块的id 选中的样式 
table(0, "sidebar", "active") 
</script> 
</html>

table.js
/** 
* @author Sky 
*/ 
var table=function(index,id,active) 
{ 
table=new Table(index,id,active); 
table.bind(); 
} 
var Table=function(index,id,active) 
{ 
this.index=parseInt(index); 
this.arr=document.getElementById(id).getElementsByTagName("li"); 
this.active=active; 
} 
Table.prototype={ 
bind:function() 
{ 
this.arr[this.index].className=this.active;//初始化 
var _self=this; 
for (var i = 0; i < this.arr.length; i++) 
{ 
this.arr[i].setAttribute("ext", i); 
this.arr[i].onclick = function(e) 
{ 
var _e = window.event||e; 
var _target=_e.srcElement || _e.target; 
_self.setClass(parseInt(_target.getAttribute("ext"))); 
} 
} 
}, 
setClass:function(index) 
{ 
this.arr[this.index].className=""; 
this.arr[index].className=this.active; 
this.index=index; 
} 
}

DEMO下载
Javascript 相关文章推荐
用jQuery实现检测浏览器及版本的脚本代码
Jan 22 Javascript
javascript中直接写php代码的方法
Jul 31 Javascript
javascript中不提供sleep功能如何实现这个功能
May 27 Javascript
Javascript基础教程之argument 详解
Jan 18 Javascript
js简单实现标签云效果实例
Aug 06 Javascript
JS实现仿新浪微博发布内容为空时提示功能代码
Aug 19 Javascript
用jquery快速解决IE输入框不能输入的问题
Oct 04 Javascript
vue移动端轻量级的轮播组件实现代码
Jul 12 Javascript
微信小程序中使用echarts的实现方法
Apr 24 Javascript
express框架下使用session的方法
Jul 31 Javascript
JavaScript变量基本使用方法实例分析
Nov 15 Javascript
JavaScript计算出两个数的差值
Mar 19 Javascript
jQuery 创建Dom元素
May 07 #Javascript
10个基于jQuery或JavaScript的WYSIWYG 编辑器整理
May 06 #Javascript
jQuery Selector选择器小结
May 06 #Javascript
Jquery 动态添加按钮实现代码
May 06 #Javascript
jquery DOM操作 基于命令改变页面
May 06 #Javascript
JQuery 学习笔记01 JQuery初接触
May 06 #Javascript
Jquery 扩展方法
May 06 #Javascript
You might like
php中转义mysql语句的实现代码
2011/06/24 PHP
php压缩HTML函数轻松实现压缩html/js/Css及注意事项
2013/01/27 PHP
php安装xdebug/php安装pear/phpunit详解步骤(图)
2013/12/22 PHP
ThinkPHP模板输出display用法分析
2014/11/26 PHP
PHP中用mysqli面向对象打开连接关闭mysql数据库的方法
2016/11/05 PHP
Laravel中Facade的加载过程与原理详解
2017/09/22 PHP
Js event事件在IE、FF兼容性问题
2011/01/01 Javascript
JSON+HTML实现国家省市联动选择效果
2014/05/18 Javascript
jQuery学习笔记之总体架构
2014/06/03 Javascript
node.js中的fs.statSync方法使用说明
2014/12/16 Javascript
jQuery 1.9.1源码分析系列(十五)之动画处理
2015/12/03 Javascript
分享jQuery封装好的一些常用操作
2016/07/28 Javascript
详解Angular中$cacheFactory缓存的使用
2016/08/19 Javascript
使用JS 插件qrcode.js生成二维码功能
2017/02/20 Javascript
vue3.0 CLI - 2.2 - 组件 home.vue 的初步改造
2018/09/14 Javascript
默认浏览器设置及vue自动打开页面的方法
2018/09/21 Javascript
使用JavaScript保存文本文件到本地的两种方法
2019/01/22 Javascript
layui table 列宽百分比显示的实现方法
2019/09/28 Javascript
React中获取数据的3种方法及优缺点
2020/02/18 Javascript
Python模拟登录验证码(代码简单)
2016/02/06 Python
完美解决安装完tensorflow后pip无法使用的问题
2018/06/11 Python
Python面向对象程序设计多继承和多态用法示例
2019/04/08 Python
使用python脚本自动创建pip.ini配置文件代码实例
2019/09/20 Python
Python3 无重复字符的最长子串的实现
2019/10/08 Python
Python安装tar.gz格式文件方法详解
2020/01/19 Python
python实现人脸签到系统
2020/04/13 Python
丹尼尔惠灵顿手表天猫官方旗舰店:Daniel Wellington
2017/08/25 全球购物
有影响力的品牌之家:Our Social Collective
2019/06/08 全球购物
数学教学随笔感言
2014/02/17 职场文书
餐厅周年庆活动方案
2014/08/25 职场文书
爱牙日活动总结
2014/08/29 职场文书
营销总经理岗位职责范本
2014/09/02 职场文书
2015年个人实习工作总结
2014/12/12 职场文书
2015年春训学习心得体会范文
2015/03/09 职场文书
2016入党积极分子考察评语
2015/12/01 职场文书
优质服务心得体会(共4篇)
2016/01/22 职场文书