拖动table标题实现改变td的大小(css+js代码)


Posted in Javascript onApril 16, 2013
<html> 
<title>拖动列宽的表格</title> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
<style type="text/css"><!-- 
.bg td{ 
font-size:12px; 
text-align:left; 
line-height:15px; 
height:20px; 
} 
.bg td.tit{ 
background-color:#e2e2e2; 
height:17px; 
text-align:center; 
line-height:15px; 
} 
.bg td.num{ 
background-color:#e2e2e2; 
text-align:right; 
line-height:15px; 
width:30px; 
height:22px; 
} 
.resizeDivClass{ 
text-align:right; 
width:1px; 
margin:0px 0 0px 0; 
background:#fff; 
border:0px; 
float:right; 
cursor:e-resize; 
} 
--></style> 
<script language="javascript"><!-- 
function MouseDownToResize(obj){ 
setTableLayoutToFixed(); 
obj.mouseDownX=event.clientX; 
obj.pareneTdW=obj.parentElement.offsetWidth; 
obj.pareneTableW=theObjTable.offsetWidth; 
obj.setCapture(); 
} 
function MouseMoveToResize(obj){ 
if(!obj.mouseDownX) return false; 
var newWidth=obj.pareneTdW*1+event.clientX*1-obj.mouseDownX; 
if(newWidth>10) 
{ 
var theObjTable = document.getElementById("theObjTable"); 
obj.parentElement.style.width = newWidth; 
theObjTable.style.width=obj.pareneTdW*1+event.clientX*1-obj.mouseDownX; 
} 
} 
function MouseUpToResize(obj){ 
obj.releaseCapture(); 
obj.mouseDownX=0; 
} 
function setTableLayoutToFixed() 
{ 
var theObjTable = document.getElementById("theObjTable"); 
if(theObjTable.style.tableLayout=='fixed') return; 
var headerTr=theObjTable.rows[0]; 
for(var i=0;i<headerTr.cells.length;i++) 
{ 
headerTr.cells[i].styleOffsetWidth=headerTr.cells[i].offsetWidth; 
} 
for(var i=0;i<headerTr.cells.length;i++) 
{ 
headerTr.cells[i].style.width=headerTr.cells[i].styleOffsetWidth; 
} 
theObjTable.style.tableLayout='fixed'; 
} 
function theObjTable(o,a,b,c){ 
var t=document.getElementById(o).getElementsByTagName("tr"); 
for(var i=0;i<t.length;i++){ 
t[i].style.backgroundColor=(t[i].sectionRowIndex%2==0)?a:b; 
t[i].onclick=function(){ 
if(this.x!="1"){ 
}else{ 
this.x="0"; 
this.style.backgroundColor=(this.sectionRowIndex%2==0)?a:b; 
} 
} 
t[i].onmouseover=function(){ 
if(this.x!="1")this.style.backgroundColor=c; 
} 
t[i].onmouseout=function(){ 
if(this.x!="1")this.style.backgroundColor=(this.sectionRowIndex%2==0)?a:b; 
} 
} 
} 
// --></script> 
<body> 
<table width="100%" class="bg" border=1 cellspacing=0 bordercolorlight="#7b7b7b" bordercolordark="#efefef" id="theObjTable"> 
<tr> 
<td class="num">序号</td> 
<td width="100px" class="tit"> 
<span class="resizeDivClass" onMouseDown="MouseDownToResize(this);" onMouseMove="MouseMoveToResize(this);" onMouseUp="MouseUpToResize(this);"></span> 
公司名称 
</td> 
<td class="tit"> 
<span class="resizeDivClass" onMouseDown="MouseDownToResize(this);" onMouseMove="MouseMoveToResize(this);" onMouseUp="MouseUpToResize(this);"></span> 
订单客户 
</td> 
<td class="tit"> 
<span class="resizeDivClass" onMouseDown="MouseDownToResize(this);" onMouseMove="MouseMoveToResize(this);" onMouseUp="MouseUpToResize(this);"></span> 
部门 
</td> 
<td class="tit"> 
<span class="resizeDivClass" onMouseDown="MouseDownToResize(this);" onMouseMove="MouseMoveToResize(this);" onMouseUp="MouseUpToResize(this);"></span> 
业务员 
</td> 
<td class="tit"> 
<span class="resizeDivClass" onMouseDown="MouseDownToResize(this);" onMouseMove="MouseMoveToResize(this);" onMouseUp="MouseUpToResize(this);"></span> 
交款方式 
</td> 
</tr> 
<tr> 
<td class="num" >1</td> 
<td >中国电信</td> 
<td >订单客户名称</td> 
<td >广告部</td> 
<td >王天一</td> 
<td >现金</td> 
</tr> 
<tr> 
<td class="num" >2</td> 
<td >中国移动</td> 
<td >订单客户名称</td> 
<td >营销部</td> 
<td >李小红</td> 
<td >信用卡</td> 
</tr> 
<tr> 
<td class="num" >3</td> 
<td >中国联通</td> 
<td >订单客户名称</td> 
<td >市场部</td> 
<td >王老二</td> 
<td >银行卡</td> 
</tr> 
</table> 
<script language="javascript"><!-- 
//senfe("表格名称","奇数行背景","偶数行背景","鼠标经过背景","点击后背景"); 
theObjTable("theObjTable","#c0c0c0","#fff","#a3a2a2"); 
// --></script> 
</body> 
</html>
Javascript 相关文章推荐
最近项目写了一些js,水平有待提高
Jan 31 Javascript
js弹出层包含flash 不能关闭隐藏的2种处理方法
Jun 17 Javascript
取消选中单选框radio的三种方式示例介绍
Dec 23 Javascript
Javascript小技巧之生成html元素
May 15 Javascript
javascript对中文按照拼音排序代码
Aug 20 Javascript
JS基于HTML5的canvas标签实现炫目的色相球动画效果实例
Aug 24 Javascript
Javascript 事件冒泡机制详细介绍
Oct 10 Javascript
javascript实现日期三级联动下拉框选择菜单
Dec 03 Javascript
vue返回上一页面时回到原先滚动的位置的方法
Dec 20 Javascript
如何检查一个对象是否为空
Apr 11 Javascript
微信小程序云开发实现增删改查功能
May 17 Javascript
Vue中component标签解决项目组件化操作
Sep 04 Javascript
获取offsetTop和offsetLeft值的js代码(兼容)
Apr 16 #Javascript
jquery表格内容筛选实现思路及代码
Apr 16 #Javascript
js实现图片轮换效果代码
Apr 16 #Javascript
js相册效果代码(点击创建即可)
Apr 16 #Javascript
jQuery实现点击标题输入详细信息
Apr 16 #Javascript
jQuery图片的展开和收缩实现代码
Apr 16 #Javascript
js变换显示图片的实例
Apr 16 #Javascript
You might like
PHP实现获取文件后缀名的几种常用方法
2015/08/08 PHP
php获取ajax的headers方法与内容实例
2017/12/27 PHP
php使用goto实现自动重启swoole、reactphp、workerman服务的代码
2020/04/13 PHP
Javascript操纵Cookie实现购物车程序
2006/11/23 Javascript
ejs v9 javascript模板系统
2012/03/21 Javascript
3种Jquery限制文本框只能输入数字字母的方法
2014/12/03 Javascript
js随机生成字母数字组合的字符串 随机动画数字
2015/09/02 Javascript
AngularJS页面访问时出现页面闪烁问题的解决
2016/03/06 Javascript
js中scrollTop()方法和scroll()方法用法示例
2016/10/03 Javascript
原生JavaScript制作计算器
2016/10/16 Javascript
BootStrap整体框架之基础布局组件
2016/12/15 Javascript
jQuery实现圣诞节礼物传送(花式轮播)
2016/12/25 Javascript
js判断节假日实例代码
2017/12/27 Javascript
微信小程序模版渲染详解
2018/01/26 Javascript
vue首次赋值不触发watch的解决方法
2018/09/11 Javascript
Vue的属性、方法、生命周期实例代码详解
2019/09/17 Javascript
Python编码时应该注意的几个情况
2013/03/04 Python
Python代码调试的几种方法总结
2015/04/15 Python
Python操作csv文件实例详解
2017/07/31 Python
python单例模式实例解析
2018/08/28 Python
django rest framework 实现用户登录认证详解
2019/07/29 Python
python随机数分布random均匀分布实例
2019/11/27 Python
pymysql的简单封装代码实例
2020/01/08 Python
mac在matplotlib中显示中文的操作方法
2020/03/06 Python
python实现简单的学生管理系统
2021/02/22 Python
全世界最美丽的四星和五星级酒店预订:Prestigia.com
2017/11/15 全球购物
20世纪40年代连衣裙和复古服装:The Seamstress Of Bloomsbury
2018/07/24 全球购物
利用异或运算实现两个无符号数的加法运算
2013/12/20 面试题
财务情况说明书范文
2014/05/06 职场文书
英语感谢信范文
2015/01/20 职场文书
社会主义核心价值观主题教育活动总结
2015/05/07 职场文书
初一语文教学反思
2016/03/03 职场文书
读《推着妈妈去旅行》有感1500字
2019/10/15 职场文书
使用python如何删除同一文件夹下相似的图片
2021/05/07 Python
JVM上高性能数据格式库包Apache Arrow入门和架构详解(Gkatziouras)
2021/05/26 Servers
React-vscode使用jsx语法的问题及解决方法
2021/06/21 Javascript