JAVASCRIPT+DHTML实现表格拖动
自已做的,本来想在网上找前辈们做的,可是总找不到这种例子,要么找出来的太复杂,
要么就没法用,索性自己写了一个.看看还可以用!贡献出来,估计和我一样的菜鸟用的着!
<html> <style> body{ font-size:9pt; } table,th,td{ font-size:9pt; } .lsitTalbe{ table-layout:fixed; width:30%; border-collapse:collapse; border-color:#507010; color:#003300; } .pageda{ font-family:Webdings; font-size:12pt; color:#CCCCCC; cursor:default; } .pageua{ font-family:Webdings; font-size:12pt; } .even{ background:#e8f8d0; } .odd{ background:#f8fcf0; } .header{ background:a0dc40; color:003300; } </style> <head> <TITLE>JAVASCRIPT+DHTML实现表格拖动DEMO</TITLE> <META NAME="Generator" CONTENT="EditPlus"> <META NAME="Author" CONTENT="Hunk Dong"> </head> <body> <br> JAVASCRIPT+DHTML实现表格拖动 按住 <b>列1</b> 即可拖动 <hr width="30%" align="left"> <table class="lsitTalbe" border="1" cellspacing="1" cellpadding="1" onmousedown="mousedown()" onmouseup="mouseup()" onmousemove="mousemove()" > <tr class="header"> <th width="10%">列1</th> <th width="10%">列2</th> <th width="40%">列3</th> <th width="40%">列4</th> <tr> <tr class="even" id="tr_1"> <TD style="cursor:move" title="按住可拖动">1</TD> <TD ><INPUT class=inputStyle id=chkTaskItem_3 type=checkbox value=3 name=chkTaskItem></TD> <TD ><INPUT class=inputStyle id=txtTaskName_3 type=txtTaskName size=25 name=txtTaskName value="test1"></TD> <TD >test1</TD> </tr> <tr class="odd" id="tr_2"> <TD style="cursor:move" title="按住可拖动">2</TD> <TD ><INPUT class=inputStyle id=chkTaskItem4 type=checkbox value=4 name=chkTaskItem></TD> <TD ><INPUT class=inputStyle id=txtTaskName_4 type=txtTaskName size=25 name=txtTaskName value="test2"></TD> <TD >test2</TD> </tr> <tr class="even" id="tr_3"> <TD style="cursor:move" title="按住可拖动">3</TD> <TD ><INPUT class=inputStyle id=chkTaskItem_5 type=checkbox value=5 name=chkTaskItem></TD> <TD ><INPUT class=inputStyle id=txtTaskName_5 type=txtTaskName size=25 name=txtTaskName value="test3"></TD> <TD >test3</TD> </tr> </table> </body> </html> <script language="javaScript"> var srcRowIndex; var targetRowIndex; var bDragMode ; var objDragItem ; var el; function window.onload(){ initAdditionalElements(); } function initAdditionalElements(){ objDragItem = document.createElement("DIV"); with(objDragItem.style){ backgroundColor = "buttonshadow"; cursor = "default"; position = "absolute"; filter = "progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=50)"; zIndex = 3001; display ="none"; } window.document.body.insertAdjacentElement("afterBegin", objDragItem); } function mousedown(){ el = window.event.srcElement; if(el==null||el.tagName!="TD") return false; if(el.cellIndex!=0 || el.parentNode.rowIndex<2) return false; srcRowIndex = el.parentElement; bDragMode = true ; if (objDragItem!=null){ with(objDragItem){ innerHTML = el.parentElement.innerHTML; style.height = el.parentElement.offsetHeight; style.width = el.parentElement.offsetWidth; } } el.setCapture(); } function mouseup(){ if(el==null || el.cellIndex!=0 || el.parentNode.rowIndex<2) return false; targetRowIndex = el.parentElement; srcRowIndex.swapNode(targetRowIndex); bDragMode = false ; objDragItem.style.display ="none"; } function mousemove(){ el = window.event.srcElement; window.event.cancelBubble = false; cliX = window.event.clientX; cliY = window.event.clientY; if(bDragMode && objDragItem!=null){ with(objDragItem){ style.display =""; style.posLeft = cliX +1; style.posTop = cliY - offsetHeight/2; } } } </script>
直接Copy下来就可以用,欢迎大家一起讨论
JAVASCRIPT+DHTML实现表格拖动的更多相关文章
- JQuery 表格拖动调整列宽效果
类似于桌面程序中的表格拖动表头的效果,当鼠标停留在表头边框线上时,鼠标会变成表示左右拖动的形状,接着拖动鼠标,会在表格中出现一条随鼠标移动的竖线,最后放开鼠标,表格列宽会被调整.最近比较空闲,便自己动 ...
- JavaScript动态改变表格单元格内容的方法
本文实例讲述了JavaScript动态改变表格单元格内容的方法.分享给大家供大家参考.具体如下: JavaScript动态改变表格单元格的内容,下面的代码通过修改单元格的innerHTML来修改单元格 ...
- JavaScript 创建动态表格
JavaScript 创建动态表格 版权声明:未经授权,严禁转载! 案例代码 <div id="data"></div> <script> va ...
- javascript生成表格增删改查 JavaScript动态改变表格单元格内容 动态生成表格 JS获取表格任意单元格 javascript如何动态删除表格某一行
jsp页面表格布局Html代码 <body onload="show()"> <center> <input type="text" ...
- HTML & CSS & JavaScript 从一个表格到一个灰阶颜色表(目录)
HTML & CSS & JavaScript 从一个表格到一个灰阶颜色表 01 HTML & CSS & JavaScript 从一个表格到一个灰阶颜色表 02 HT ...
- HTML & CSS & JavaScript 从一个表格到一个灰阶颜色表 01
工具1:HBuilder X 1.9.9.20190522 工具2:火狐浏览器 67.0.4 (64 位) 在开始之前,你需要了解一些基本的知识,不要求你能掌握,但是了解一下还是有益的: HTML 简 ...
- HTML & CSS & JavaScript 从一个表格到一个灰阶颜色表 03
工具1:HBuilder X 1.9.9.20190522 工具2:火狐浏览器 67.0.4 (64 位) 其实,我还想使用表格,做一个这样的颜色表,如下图所示: 如果按照之前的做法,把每一种颜色都列 ...
- HTML & CSS & JavaScript 从一个表格到一个灰阶颜色表 02
工具1:HBuilder X 1.9.9.20190522 工具2:火狐浏览器 67.0.4 (64 位) 其实,我想使用表格,做一个这样的颜色表,如下图所示: 例 3:我们参照上图,基于上一个例子, ...
- HTML & CSS & JavaScript 从一个表格到一个灰阶颜色表 04
工具1:HBuilder X 1.9.9.20190522 工具2:火狐浏览器 67.0.4 (64 位) 目前,我们已经将一些行和列插入到表格中,并设置单元格的背景颜色,显示 RGB 值等. 例 7 ...
随机推荐
- PHP如何使用免费在线客服插件
1 你可以从以下网址下载http://www.hur.cn/Soft/2011/12448.html 2 解压并放到任意文件夹下 3 在安装之前,先在数据库中创建一个完整的数据库,因为待会儿安装完成之 ...
- VB 获取默认打印机的状态
如何获取默认打印机的状态,包括缺纸.卡纸.无连接等状态,还有将某文件打印后,如何得知打印成功? Option ExplicitDeclare Function MapPhysToLin Lib &qu ...
- Java设计模式—工厂设计模式
工厂设计模式(减少耦合.通过接口或者工厂类来实现) 耦合性:粘度强(依耐性) Person p = new Person(); //耦合性强 Man p = new Per ...
- Hadoop-1.2.1学习之Job创建和提交源码分析
在Hadoop中,MapReduce的Java作业通常由编写Mapper和Reducer開始.接着创建Job对象.然后使用该对象的set方法设置Mapper和Reducer以及诸如输入输出等參数,最后 ...
- 【BIRT】报表数据导出为PDF显示不全
正常导出方法 导出结果 从上图可以看出,缺失了一部分 解决问题 那么我们采用以下方法导出即可: 导出结果: 完美解决问题.
- Jsp+Servlet+JavaBean经典MVC模式理解
MVC模式目的(实现Web系统的职能分工). 在Java EE中,Jsp+Servlet+JavaBean算是里面经典的模式,是初学者必备的知识技能.M, Model(模型)实现系统的业务逻辑 1.通 ...
- 一对一关系数据库表 java类描述
一对一关系中 从表的主键是 主表的外键 sql语句 create table person( id int primary key, name varchar(100) ); create table ...
- [Linux]--解决虚拟机中安装ubuntu不能自适应的问题
这几天换了新的电脑,但是装上ubuntu mate以后就一直不能自适应窗口大小改变分辨率,奈何我是个强迫症,再加上也不想老师带着自己的笔记本跑动跑西的(主要是太重了...),于是今天花了一下午的时间找 ...
- iOS 获得通讯录中联系人的所有属性--b
ABAddressBookRef addressBook = ABAddressBookCreate(); CFArrayRef results = ABAddressBookCopyArrayOfA ...
- js 根据title从下级往上级查找
var menuData = [{ name: 'manage', title: '测试1', icon: 'home', }, { title: '测试2', name: 'car-parent', ...