JS实现可改变列宽的table实例


Posted in Javascript onJuly 02, 2013
<!DOCTYPE HTML> 
<html> 
<head> 
<meta charset="gbk"> 
<title>table</title> 
</head> 
<body> 
<table id="tb_1" cellspacing="0" cellpadding="2" width="100%" border="1"> 
<tbody> 
<tr align="center" bgcolor="#dcdcdc"> 
<td style="width:100px;">用户编号</td> 
<td>试用时间</td><td>转正时间</td><td>性别</td><td>姓名拼音</td> 
<td>生日时间</td><td>民族</td><td>身高</td> 
</tr> 
<tr> 
<td>2000001</td> 
<td>1997-3-13</td><td>1997-3-13</td><td>1</td><td>WZJ</td> 
<td>1965-3-13</td><td>汉</td><td>171</td> 
</tr> 
<tr> 
<td>2000045</td> 
<td>2001-2-15</td><td>2001-3-15</td><td>0</td><td>WY</td> 
<td>1978-8-5</td><td>汉</td><td>162</td> 
</tr> 
<tr> 
<td>2000046</td> 
<td>2001-2-23</td><td>2001-3-23</td><td>0</td><td>LQ</td> 
<td>2001-2-23</td><td>汉</td><td>171</td> 
</tr> 
</tbody> 
</table> 
<script type="text/javascript"> 
var tTD; //用来存储当前更改宽度的Table Cell,避免快速移动鼠标的问题 
var table = document.getElementById("tb_1"); 
for (j = 0; j < table.rows[0].cells.length; j++) { 
table.rows[0].cells[j].onmousedown = function () { 
//记录单元格 
tTD = this; 
if (event.offsetX > tTD.offsetWidth - 10) { 
tTD.mouseDown = true; 
tTD.oldX = event.x; 
tTD.oldWidth = tTD.offsetWidth; 
} 
//记录Table宽度 
//table = tTD; while (table.tagName != ‘TABLE') table = table.parentElement; 
//tTD.tableWidth = table.offsetWidth; 
}; 
table.rows[0].cells[j].onmouseup = function () { 
//结束宽度调整 
if (tTD == undefined) tTD = this; 
tTD.mouseDown = false; 
tTD.style.cursor = 'default'; 
}; 
table.rows[0].cells[j].onmousemove = function () { 
//更改鼠标样式 
if (event.offsetX > this.offsetWidth - 10) 
this.style.cursor = 'col-resize'; 
else 
this.style.cursor = 'default'; 
//取出暂存的Table Cell 
if (tTD == undefined) tTD = this; 
//调整宽度 
if (tTD.mouseDown != null && tTD.mouseDown == true) { 
tTD.style.cursor = 'default'; 
if (tTD.oldWidth + (event.x - tTD.oldX)>0) 
tTD.width = tTD.oldWidth + (event.x - tTD.oldX); 
//调整列宽 
tTD.style.width = tTD.width; 
tTD.style.cursor = 'col-resize'; 
//调整该列中的每个Cell 
table = tTD; while (table.tagName != 'TABLE') table = table.parentElement; 
for (j = 0; j < table.rows.length; j++) { 
table.rows[j].cells[tTD.cellIndex].width = tTD.width; 
} 
//调整整个表 
//table.width = tTD.tableWidth + (tTD.offsetWidth ? tTD.oldWidth); 
//table.style.width = table.width; 
} 
}; 
} 
</script> 
</body> 
</html>
Javascript 相关文章推荐
json 实例详细说明教程
Oct 31 Javascript
基于jQuery的消息提示插件 DivAlert之旅(二)
Apr 01 Javascript
IE的fireEvent方法概述及应用
Feb 22 Javascript
如何解决谷歌浏览器下jquery无法获取图片的尺寸
Sep 10 Javascript
深入理解JS addLoadEvent函数
May 20 Javascript
不同js异步函数同步的实现方法
May 28 Javascript
在Web项目中引入Jquery插件报错的完美解决方案(图解)
Sep 19 Javascript
利用JavaScript实现栈的数据结构示例代码
Aug 02 Javascript
详解ECMAScript typeof用法
Jul 25 Javascript
利用Node.js如何实现文件循环覆写
Apr 05 Javascript
微信头像地址失效踩坑记附带解决方案
Sep 23 Javascript
使用TS来编写express服务器的方法步骤
Oct 29 Javascript
js 图片随机不定向浮动的实现代码
Jul 02 #Javascript
js猜数字小游戏的简单实现代码
Jul 02 #Javascript
jQuery中获取Radio元素值的方法
Jul 02 #Javascript
js网页版计算器的简单实现
Jul 02 #Javascript
js实现广告漂浮效果的小例子
Jul 02 #Javascript
JavaScript计算字符串中每个字符出现次数的小例子
Jul 02 #Javascript
JavaScript 函数参数是传值(byVal)还是传址(byRef) 分享
Jul 02 #Javascript
You might like
php iconv() : Detected an illegal character in input string
2010/12/05 PHP
Zend Framework入门之环境配置及第一个Hello World示例(附demo源码下载)
2016/03/21 PHP
php中strtotime函数性能分析
2016/11/20 PHP
jquery 问答知识整理
2010/02/11 Javascript
6个DIV 135或246间隔一秒轮番显示效果
2010/07/24 Javascript
js 左右悬浮对联广告特效代码
2014/12/12 Javascript
JS实现同一个网页布局滑动门和TAB选项卡实例
2015/09/23 Javascript
JavaScript读二进制文件并用ajax传输二进制流的方法
2016/07/18 Javascript
JavaScript关于提高网站性能的几点建议(一)
2016/07/24 Javascript
Javascript函数中的arguments.callee用法实例分析
2016/09/16 Javascript
jQuery获取this当前对象子元素对象的方法
2016/11/29 Javascript
js仿小米手机上下滑动效果
2017/02/05 Javascript
jQuery获取单选按钮radio选中值与去除所有radio选中状态的方法
2017/05/20 jQuery
MVVM框架下实现分页功能示例
2018/06/14 Javascript
python创建线程示例
2014/05/06 Python
Python解析网页源代码中的115网盘链接实例
2014/09/30 Python
Python单例模式的两种实现方法
2017/08/14 Python
python爬取亚马逊书籍信息代码分享
2017/12/09 Python
python 快速把超大txt文件转存为csv的实例
2018/10/26 Python
python 检查是否为中文字符串的方法
2018/12/28 Python
Python高级property属性用法实例分析
2019/11/19 Python
python科学计算之scipy——optimize用法
2019/11/25 Python
pytorch 图像中的数据预处理和批标准化实例
2020/01/15 Python
解决pyecharts运行后产生的html文件用浏览器打开空白
2020/03/11 Python
3种适用于Python的疯狂秘密武器及原因解析
2020/04/29 Python
pytorch实现查看当前学习率
2020/06/24 Python
新西兰廉价汽车租赁:Snap Rentals
2018/09/14 全球购物
土木工程专业大学毕业生求职信
2013/10/13 职场文书
高分子材料与工程专业个人求职信
2013/12/15 职场文书
公益活动策划方案
2014/01/09 职场文书
投资意向书范本
2014/04/01 职场文书
三万活动总结
2014/04/28 职场文书
《夸父追日》教学反思
2016/02/20 职场文书
2019年“我为祖国点赞”演讲稿(3篇)
2019/09/26 职场文书
如何使用Tkinter进行窗口的管理与设置
2021/06/30 Python
mysql字段为NULL索引是否会失效实例详解
2022/05/30 MySQL