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 相关文章推荐
javascript 日期常用的方法
Nov 11 Javascript
javascript实现单击和双击并存的方法
Dec 13 Javascript
js Calender控件使用详解
Jan 05 Javascript
jquery.uploadify插件在chrome浏览器频繁崩溃解决方法
Mar 01 Javascript
Jquery插件easyUi实现表单验证示例
Dec 15 Javascript
js中数组结合字符串实现查找(屏蔽广告判断url等)
Mar 30 Javascript
Node.js Streams文件读写操作详解
Jul 04 Javascript
js禁止浏览器的回退事件
Apr 20 Javascript
在React中如何优雅的处理事件响应详解
Jul 24 Javascript
微信小程序使用navigateTo数据传递的实例
Sep 26 Javascript
微信小程序实现折叠与展开文章功能
Jun 12 Javascript
JS实现电话号码的字母组合算法示例
Feb 26 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
在WIN98下以apache模块方式安装php
2006/10/09 PHP
PHP无敌近乎加密方式!
2010/07/17 PHP
Nginx下ThinkPHP5的配置方法详解
2017/08/01 PHP
针对PHP开发安全问题的相关总结
2019/03/22 PHP
JQuery操作tr和td内容的方法实例
2013/03/06 Javascript
JS打开新窗口的2种方式
2013/04/18 Javascript
JS控制一个DIV层在指定时间内消失的方法
2014/02/17 Javascript
跟我学Node.js(四)---Node.js的模块载入方式与机制
2014/06/04 Javascript
js动态切换图片的方法
2015/01/20 Javascript
jQuery实现带滑动条的菜单效果代码
2015/08/26 Javascript
JavaScript学习笔记整理之引用类型
2016/01/22 Javascript
BootStrap点击下拉菜单项后显示一个新的输入框实现代码
2016/05/16 Javascript
jQuery dataTables与jQuery UI 对话框dialog的使用教程
2016/09/02 Javascript
express文件上传中间件Multer详解
2016/10/24 Javascript
node.js中express中间件body-parser的介绍与用法详解
2017/05/23 Javascript
JS实现不用中间变量temp 实现两个变量值得交换方法
2018/02/04 Javascript
详解html-webpack-plugin插件(用法总结)
2018/09/12 Javascript
JS算法教程之字符串去重与字符串反转
2020/12/15 Javascript
[47:42]Fnatic vs Liquid 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
python基础教程之循环介绍
2014/08/29 Python
详解在Python中处理异常的教程
2015/05/24 Python
Django自定义用户认证示例详解
2018/03/14 Python
python+pandas分析nginx日志的实例
2018/04/28 Python
Python批量删除只保留最近几天table的代码实例
2019/04/01 Python
浅谈python 中的 type(), dtype(), astype()的区别
2020/04/09 Python
西班牙英格列斯百货法国官网:El Corte Inglés法国
2017/07/09 全球购物
加拿大领先的优质厨具产品在线购物网站:Golda’s Kitchen
2017/11/17 全球购物
汉森批发:Hansen Wholesale
2018/05/24 全球购物
英国家具、照明、家居用品网上商店:Wayfair.co.uk
2020/02/13 全球购物
大型营销活动计划书
2014/04/28 职场文书
教师师德演讲稿
2014/05/06 职场文书
2014年党课学习心得体会
2014/07/08 职场文书
大学生实习证明范本
2014/09/19 职场文书
复兴之路观后感
2015/06/02 职场文书
css display table 自适应高度、宽度问题的解决
2021/05/07 HTML / CSS
mysql定时自动备份数据库的方法步骤
2021/07/07 MySQL