日期:2014-05-17 浏览次数:20681 次
11,动态改变表格的行顺序
<html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>无标题页</title> <script language="javascript"> var beginMoving=false; //判断是否移动的标识-移动开关 //鼠标按下时的操作 function MouseDownToMove(obj){ obj.style.zIndex=1; //样式 obj.mouseDownY=event.clientY; //鼠标Y坐标 obj.mouseDownX=event.clientX; //鼠标X坐标 beginMoving=true; //开始移动 obj.setCapture(); //捕获鼠标操作 } //鼠标按下并移动时的操作 function MouseMoveToMove(obj){ if(!beginMoving) return false; //改变目标行的X.Y坐标 obj.style.top = (event.clientY-obj.mouseDownY); obj.style.left = (event.clientX-obj.mouseDownX); } //鼠标抬起时的操作 function MouseUpToMove(obj){ if(!beginMoving) return false; obj.releaseCapture(); //释放对鼠标的捕获 obj.style.top=0; obj.style.left=0; obj.style.zIndex=0; beginMoving=false; //关闭移动开关 var tempTop=event.clientY-obj.mouseDownY; var tempRowIndex=(tempTop-tempTop%20)/20; //根据行高度获取行位置索引 if(tempRowIndex+obj.rowIndex <0 ) tempRowIndex=-1; else tempRowIndex=tempRowIndex+obj.rowIndex; //实际的行索引 if(tempRowIndex >= obj.parentElement.rows.length-1) tempRowIndex = obj.parentElement.rows.length-1; obj.parentElement.moveRow(obj.rowIndex,tempRowIndex); //移动行到指定位置 } </script> </head> <body> <TABLE WIDTH="300" BORDER="1" > <TR style='height:20;position:relative;' onmousedown='MouseDownToMove(this)' onmousemove='MouseMoveToMove(this)' onmouseup='MouseUpToMove(this);'><TD >第一行</TD><TD>第一行</TD><TD>第一行</TD></TR> <TR style='height:20;position:relative;' onmousedown='MouseDownToMove(this)' onmousemove='MouseMoveToMove(this)' onmouseup='MouseUpToMove(this);'><TD >第二行</TD><TD>第二行</TD><TD>第二行</TD></TR> <TR style='height:20;position:relative;' onmousedown='MouseDownToMove(this)' onmousemove='MouseMoveToMove(this)' onmouseup='MouseUpToMove(this);'><TD >第三行</TD><TD>第三行</TD><TD>第三行</TD></TR> </TABLE> </body> </html>
?
12,用键盘实现表格的上下选择
<html> <head> <title>键盘方向键控制表格</title> </head> <body onKeyDown="keyCheck();"> <table width="80" bgcolor="#FFFFFF" height="60" border="1" bordercolor="#FFFFFF" cellpadding="0" cellspacing="0"> <tr> <td id="td1" width="80">第一行</td> </tr> <tr> <td id="td2" width="80">第二行</td> </tr> <tr> <td id="td3" width="80">第三行</td> </tr> <tr> <td id="td4" width="80">第四行</td> </tr> <tr> <td id="td5" width="80">第五行</td> </tr> <tr> <td id="td6" width="80">第六行</td> </tr> </table> <script language="javascript"> var tdIndex = 1; //获取当前行的索引变量 document.all.td1.style.backgroundColor='#3366aa'; //设置列1的背景色 function keyCheck() { if (window.event.keyCode==38) { //向上键 for (var i=1;i<=6;i++) { eval("document.all.td"+i+".style.backgroundColor='#FFFFFF'");//更改所有的行背景色 } if (tdIndex<=1) { document.all.td1.style.backgroundColor='#3366aa'; //到顶端时,只第一行颜色改变 alert('已到顶端'); return false; } else { tdIndex -= 1; //行索引减小 eval("document.all.td"+tdIndex+".style.backgroundColor='#3366aa'");//改变行的背景色 } } if (window.event.keyCode==40) { //向下键 for (var i=1;i<=6;i++) { eval("document.all.td"+i+".style.backgroundColor='#FFFFFF'");//更改所有的行背景色 } if (tdIndex>=6) { document.all.td6.style.backgroundColor='#3366aa'; //到顶端时,只第一行颜色改变 alert('已到底端'); return false; } else { tdIndex += 1;