拖拉表格的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 相关文章推荐
jQuery与ExtJS之选择实例分析
Aug 19 Javascript
基于jquery的一个拖拽到指定区域内的效果
Sep 21 Javascript
用js来获取上传的文件名纯粹是为了美化而用
Oct 23 Javascript
分享JS数组求和与求最大值的方法
Aug 11 Javascript
JS实现鼠标滑过显示边框的菜单效果
Sep 21 Javascript
JavaScript正则表达式实例详解
Oct 16 Javascript
详解设置Webstorm 利用babel将ES6自动转码成ES5
Dec 20 Javascript
js取0-9随机取4个数不重复的数字代码实例
Mar 27 Javascript
JavaScript实现动态留言板
Mar 16 Javascript
js实现数据导出为EXCEL(支持大量数据导出)
Mar 31 Javascript
JavaScript交换变量的常用方法小结【4种方法】
May 07 Javascript
在vue中使用console.log无效的解决
Aug 09 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查询ip所在地的方法
2014/12/05 PHP
discuz目录文件资料汇总
2014/12/30 PHP
动态创建的表格单元格中的事件实现代码
2008/12/30 Javascript
让FireFox支持innerText的实现代码
2009/12/01 Javascript
高亮显示web页表格行的javascript代码
2010/11/19 Javascript
利用JQuery动画制作滑动菜单项效果实现步骤及代码
2013/02/07 Javascript
JS保留两位小数 四舍五入函数的小例子
2013/11/20 Javascript
javascript操作table(insertRow,deleteRow,insertCell,deleteCell方法详解)
2013/12/16 Javascript
javascript操纵OGNL标签示例代码
2014/06/16 Javascript
学习Javascript面向对象编程之封装
2016/02/23 Javascript
深入理解JavaScript中的call、apply、bind方法的区别
2016/05/30 Javascript
node.js爬虫爬取拉勾网职位信息
2017/03/14 Javascript
基于Bootstrap分页的实例讲解(必看篇)
2017/07/04 Javascript
Vue-cli-webpack搭建斗鱼直播步骤详解
2017/11/17 Javascript
使用vue for时为什么要key【推荐】
2019/07/11 Javascript
vue中实现高德定位功能
2019/12/03 Javascript
如何配置vue.config.js 处理static文件夹下的静态文件
2020/06/19 Javascript
在Python中处理XML的教程
2015/04/29 Python
如何在Django项目中引入静态文件
2019/07/26 Python
Pandas-Cookbook 时间戳处理方式
2019/12/07 Python
使用Python测试Ping主机IP和某端口是否开放的实例
2019/12/17 Python
Python单链表原理与实现方法详解
2020/02/22 Python
Python使用graphviz画流程图过程解析
2020/03/31 Python
英国知名美妆护肤在线商城:Zest Beauty
2018/04/24 全球购物
马来西亚综合购物网站:Lazada马来西亚
2018/06/05 全球购物
年度考核自我评价
2014/01/25 职场文书
函授毕业个人自我评价
2014/02/20 职场文书
《独坐敬亭山》教学反思
2014/04/08 职场文书
药品营销策划方案
2014/06/15 职场文书
住房抵押登记委托书
2014/09/27 职场文书
三孔导游词
2015/02/05 职场文书
二十年同学聚会致辞
2015/07/28 职场文书
详解Laravel框架的依赖注入功能
2021/05/27 PHP
spring项目中切面及AOP的使用方法
2021/06/26 Java/Android
el-table-column 内容不自动换行的解决方法
2022/08/14 Vue.js
Win10服务全部禁用了怎么启动?Win10服务全部禁用解决方法
2022/09/23 数码科技