用Table简单实现Grid中的拖动效果
来源:互联网 发布:网络电视直播源码 编辑:程序博客网 时间:2024/05/22 10:49
网上有很多网友提供此功能,但是大部分都是封装到类里的,一些刚入门或对JS不甚了解的朋友就只能引用别人的东西,想改一下又怕出错,现在提供一个超简单的示例:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<style>...
table
{...}{
background-color:#808080;
font-size:12px; line-height:20px;
table-layout:fixed;
}
td
{...}{
background-color:#fff;
}
.tit
{...}{
border-left:1px solid #fff;
border-top:1px solid #fff;
background-color:#d6d3ce;
text-align:center;
clear:both;
}
.mover
{...}{
float:right;
overflow:hidden;
width:5px; height:100%;
cursor:col-resize;
}
.lable
{...}{
float:left;
margin-left:2px;
}
</style>
<script language="javascript">...
function gridMousedown(obj,e) ...{
var defaultWidth = obj.offsetWidth;
var defaultLeft = e.clientX;
var handleObj = obj;
if (!obj.initWidth) obj.initWidth = obj.offsetWidth;
document.onmousemove = function ()
...{
var initWidth = handleObj.initWidth;
var newWidth = defaultWidth + (e.clientX-defaultLeft);
newWidth = newWidth<initWidth?initWidth:newWidth;
handleObj.width = newWidth;
};
document.onmouseup = function ()
...{
document.onselectstart = document.onmousemove = document.onmouseup = null;
};
document.onselectstart = function ()
...{
return false;
};
}
</script>
</HEAD>
<BODY>
<table cellspacing="1" cellpadding="0" border="0">
<tr>
<td width="50" class="tit">
<div class="mover" onmousedown="gridMousedown(this.parentNode, event)"></div>
<div class="lable">标题1</div>
</td>
<td width="50" class="tit">
<div class="mover" onmousedown="gridMousedown(this.parentNode, event)"></div>
<div class="lable">标题2</div>
</td>
<td width="90" class="tit">
<div class="mover" onmousedown="gridMousedown(this.parentNode, event)"></div>
<div class="lable">标题3</div>
</td>
<td width="50" class="tit">
<div class="mover" onmousedown="gridMousedown(this.parentNode, event)"></div>
<div class="lable">标题4</div>
</td>
<td width="50" class="tit">
<div class="mover" onmousedown="gridMousedown(this.parentNode, event)"></div>
<div class="lable">标题5</div>
</td>
<td width="80" class="tit">
<div class="mover" onmousedown="gridMousedown(this.parentNode, event)"></div>
<div class="lable">标题6</div>
</td>
<td width="50" class="tit">
<div class="mover" onmousedown="gridMousedown(this.parentNode, event)"></div>
<div class="lable">标题7</div>
</td>
</tr>
<tr><td>aaa</td><td>aaa</td><td>aaa</td><td>aaa</td><td>aaa</td><td>aaa</td><td>aaa</td></tr>
<tr><td>bbb</td><td>bbb</td><td>bbb</td><td>bbb</td><td>bbb</td><td>bbb</td><td>bbb</td></tr>
<tr><td>ccc</td><td>ccc</td><td>ccc</td><td>ccc</td><td>ccc</td><td>ccc</td><td>ccc</td></tr>
<tr><td>ddd</td><td>ddd</td><td>ddd</td><td>ddd</td><td>ddd</td><td>ddd</td><td>ddd</td></tr>
</table>
</BODY>
</HTML>
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<style>...
table
{...}{
background-color:#808080;
font-size:12px; line-height:20px;
table-layout:fixed;
}
td
{...}{
background-color:#fff;
}
.tit
{...}{
border-left:1px solid #fff;
border-top:1px solid #fff;
background-color:#d6d3ce;
text-align:center;
clear:both;
}
.mover
{...}{
float:right;
overflow:hidden;
width:5px; height:100%;
cursor:col-resize;
}
.lable
{...}{
float:left;
margin-left:2px;
}
</style>
<script language="javascript">...
function gridMousedown(obj,e) ...{
var defaultWidth = obj.offsetWidth;
var defaultLeft = e.clientX;
var handleObj = obj;
if (!obj.initWidth) obj.initWidth = obj.offsetWidth;
document.onmousemove = function ()
...{
var initWidth = handleObj.initWidth;
var newWidth = defaultWidth + (e.clientX-defaultLeft);
newWidth = newWidth<initWidth?initWidth:newWidth;
handleObj.width = newWidth;
};
document.onmouseup = function ()
...{
document.onselectstart = document.onmousemove = document.onmouseup = null;
};
document.onselectstart = function ()
...{
return false;
};
}
</script>
</HEAD>
<BODY>
<table cellspacing="1" cellpadding="0" border="0">
<tr>
<td width="50" class="tit">
<div class="mover" onmousedown="gridMousedown(this.parentNode, event)"></div>
<div class="lable">标题1</div>
</td>
<td width="50" class="tit">
<div class="mover" onmousedown="gridMousedown(this.parentNode, event)"></div>
<div class="lable">标题2</div>
</td>
<td width="90" class="tit">
<div class="mover" onmousedown="gridMousedown(this.parentNode, event)"></div>
<div class="lable">标题3</div>
</td>
<td width="50" class="tit">
<div class="mover" onmousedown="gridMousedown(this.parentNode, event)"></div>
<div class="lable">标题4</div>
</td>
<td width="50" class="tit">
<div class="mover" onmousedown="gridMousedown(this.parentNode, event)"></div>
<div class="lable">标题5</div>
</td>
<td width="80" class="tit">
<div class="mover" onmousedown="gridMousedown(this.parentNode, event)"></div>
<div class="lable">标题6</div>
</td>
<td width="50" class="tit">
<div class="mover" onmousedown="gridMousedown(this.parentNode, event)"></div>
<div class="lable">标题7</div>
</td>
</tr>
<tr><td>aaa</td><td>aaa</td><td>aaa</td><td>aaa</td><td>aaa</td><td>aaa</td><td>aaa</td></tr>
<tr><td>bbb</td><td>bbb</td><td>bbb</td><td>bbb</td><td>bbb</td><td>bbb</td><td>bbb</td></tr>
<tr><td>ccc</td><td>ccc</td><td>ccc</td><td>ccc</td><td>ccc</td><td>ccc</td><td>ccc</td></tr>
<tr><td>ddd</td><td>ddd</td><td>ddd</td><td>ddd</td><td>ddd</td><td>ddd</td><td>ddd</td></tr>
</table>
</BODY>
</HTML>
- 用Table简单实现Grid中的拖动效果
- 使用jquery实现简单的拖动效果
- 简单拖动效果
- SenchaExt中的DataView实现table布局效果
- jQuery简单的拖动效果实现原理及示例
- JavaScript实现拖动效果
- android实现拖动效果
- android 实现拖动效果
- Android实现拖动效果
- 实现拖动效果
- 实现拖动效果
- DIV拖动效果实现
- javascript实现拖动效果
- Html5实现拖动效果
- javascript 实现拖动效果
- Android拖动效果实现
- JS拖动效果实现
- div实现拖动效果
- Sun java studio creator+Sun java application server 8.2+ Jbuilder2005+Jboss4.0.4+Ms sql server2000开发部署要领
- pbd文件格式分析(powerbuilder6.5)
- 一些杂谈:国人总爱斗争
- asp.net输出Excel
- 一篇孩子写的作文
- 用Table简单实现Grid中的拖动效果
- 哲理人生
- 我常用的软件
- 去掉iframe横向滚动条或竖条
- 破解完全入门篇,第一章--前言
- 遍历request
- 破解完全入门篇,第二章--汇编语言
- 破解完全入门篇,第三章—Windows程序
- 破解完全入门篇,第四章--调试器及相关工具入门