拖拉表格的JS函数


Posted in Javascript onNovember 20, 2008

JS: 

/* 
@parem object the tbody's object 
@parem object tr's object (must be null) 
@parem string the className of onmousedown 
@parem string the className of onmouseout 
*/ 
function order(tt,old,classover,classout) { 
var sf = arguments.callee; //get the function self 
var trs = tt.getElementsByTagName('tr'); 
for(var i=0;i<trs.length;i++) { 
trs[i].onmousedown = function () { 
if(this.style.cursor == 'move') { 
return false; 
} 
classout = this.className; 
this.className = classover; 
this.style.cursor = 'move'; 
old = this; 
} 
trs[i].onmouseover = function () { 
if(this.style.cursor == 'move' || !old) { 
return false; 
} 
var tmp_old = old.cloneNode(true); 
var tmp_now = this.cloneNode(true); 
var p = this.parentNode; 
p.replaceChild(tmp_now,old); 
p.replaceChild(tmp_old,this); 
sf(tt,tmp_old,classover,classout); 
} 
trs[i].onmouseout = function () { 
//this.className = classout; 
} 
trs[i].onmouseup = function () { 
this.className = classout; 
this.style.cursor = ''; 
old = null; 
} 
} 
}

示例: 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>无标题文档</title> 
</head> 
<script src="js/ajax.js"></script> 
<script src="js/global.js"></script> 
<style type="text/css"> 
.table { 
background-color:red; 
} 
.table td { 
background-color:#eeeeee; 
} 
.now td{ 
background-color:red; 
} 
</style> 
<script type="text/javascript"> 
<!-- 
window.onload = function () { 
order(document.getElementById('tt'),null,"now"); 
} 
/* 
@parem object the tbody's object 
@parem object tr's object (must be null) 
@parem string the className of onmousedown 
@parem string the className of onmouseout 
*/ 
function order(tt,old,classover,classout) { 
var sf = arguments.callee; //get the function self 
var trs = tt.getElementsByTagName('tr'); 
for(var i=0;i<trs.length;i++) { 
trs[i].onmousedown = function () { 
if(this.style.cursor == 'move') { 
return false; 
} 
classout = this.className; 
this.className = classover; 
this.style.cursor = 'move'; 
old = this; 
} 
trs[i].onmouseover = function () { 
if(this.style.cursor == 'move' || !old) { 
return false; 
} 
var tmp_old = old.cloneNode(true); 
var tmp_now = this.cloneNode(true); 
var p = this.parentNode; 
p.replaceChild(tmp_now,old); 
p.replaceChild(tmp_old,this); 
sf(tt,tmp_old,classover,classout); 
} 
trs[i].onmouseout = function () { 
//this.className = classout; 
} 
trs[i].onmouseup = function () { 
this.className = classout; 
this.style.cursor = ''; 
old = null; 
} 
} 
} 
//--> 
</script> 
<body> 
<table border="0" cellpadding="0" cellspacing="1" class="table"> 
<tbody> 
<tr > 
<td>ID</td> 
<td>记录</td> 
</tr> 
</tbody> 
<tbody id="tt"> 
<tr > 
<td>1</td> 
<td>记录</td> 
</tr> 
<tr> 
<td>2</td> 
<td>记录</td> 
</tr> 
<tr> 
<td>3</td> 
<td>记录</td> 
</tr> 
<tr> 
<td>4</td> 
<td>记录</td> 
</tr> 
</tbody> 
</table> 
</body> 
</html>
Javascript 相关文章推荐
JavaScript下通过的XMLHttpRequest发送请求的代码
Jun 28 Javascript
动态加载js、css等文件跨iframe实现
Feb 24 Javascript
JavaScript排序算法之希尔排序的2个实例
Apr 04 Javascript
JavaScript判断数字是否为质数的方法汇总
Jun 02 Javascript
bootstrap配合Masonry插件实现瀑布式布局
Jan 18 Javascript
angular之ng-template模板加载
Nov 09 Javascript
VUE重点问题总结
Mar 19 Javascript
三分钟学会用ES7中的Async/Await进行异步编程
Jun 14 Javascript
vue-cli中安装方法(图文详细步骤)
Dec 12 Javascript
详解一个基于套接字实现长连接的express
Mar 28 Javascript
arctext.js实现文字平滑弯曲弧形效果的插件
May 13 Javascript
layer.js open 隐藏滚动条的例子
Sep 05 Javascript
设置下载不需要倒计时cookie(倒计时代码)
Nov 19 #Javascript
JavaScript在IE中“意外地调用了方法或属性访问”
Nov 19 #Javascript
$.ajax json数据传递方法
Nov 19 #Javascript
jquery $.ajax入门应用二
Nov 19 #Javascript
jquery $.ajax入门应用一
Nov 19 #Javascript
传递参数的标准方法(jQuery.ajax)
Nov 19 #Javascript
仿迅雷焦点广告效果(JQuery版)
Nov 19 #Javascript
You might like
PHP实现读取一个1G的文件大小
2013/08/24 PHP
分享几种好用的PHP自定义加密函数(可逆/不可逆)
2020/09/15 PHP
js资料prototype 属性
2007/03/13 Javascript
jQuery1.5.1 animate方法源码阅读
2011/04/05 Javascript
JS 添加千分位与去掉千分位的示例
2013/07/11 Javascript
javascript属性访问表达式用法分析
2015/04/25 Javascript
javaScript中with函数用法实例分析
2015/06/08 Javascript
js基于面向对象实现网页TAB选项卡菜单效果代码
2015/09/09 Javascript
炫酷的js手风琴效果
2016/10/13 Javascript
easyui取消表单实时验证,提交时统一验证的简单实例
2016/11/07 Javascript
JS实现给json数组动态赋值的方法示例
2020/03/19 Javascript
vue滚动轴插件better-scroll使用详解
2017/10/17 Javascript
JS排序算法之希尔排序与快速排序实现方法
2017/12/12 Javascript
vue实现的微信机器人聊天功能案例【附源码下载】
2019/02/18 Javascript
python+opencv实现的简单人脸识别代码示例
2017/11/14 Python
Python调用C语言的方法【基于ctypes模块】
2018/01/22 Python
python一行sql太长折成多行并且有多个参数的方法
2018/07/19 Python
Python 创建新文件时避免覆盖已有的同名文件的解决方法
2018/11/16 Python
VSCode Python开发环境配置的详细步骤
2019/02/22 Python
python实现自动化上线脚本的示例
2019/07/01 Python
python:动态路由的Flask程序代码
2019/11/22 Python
python+selenium+PhantomJS抓取网页动态加载内容
2020/02/25 Python
香港卓悦化妆品官网:BONJOUR
2017/09/21 全球购物
main 函数执行以前,还会执行什么代码
2013/04/17 面试题
汽车维修专业个人求职信范文
2014/01/01 职场文书
社会保险接收函
2014/01/12 职场文书
买房委托公证书
2014/04/08 职场文书
药品业务员岗位职责
2014/04/17 职场文书
缓刑人员思想汇报
2014/10/11 职场文书
教师自查自纠材料
2014/10/14 职场文书
面试复试通知单
2015/04/24 职场文书
新农村建设指导员工作总结
2015/08/13 职场文书
2016年教师新年寄语
2015/08/18 职场文书
公司年会主持词范文!
2019/05/07 职场文书
Hive HQL支持2种查询语句风格
2022/06/25 数据库
Java实现贪吃蛇游戏的示例代码
2022/09/23 Java/Android