JAVASCRIPT+DHTML实现表格拖动

dhtml|javascript

<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"       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>

时间: 2024-10-06 07:10:14

JAVASCRIPT+DHTML实现表格拖动的相关文章

javascript 动态添加表格行

javascript|动态 介绍如何使用javascript动态添加表格行,并对其中的方法做详细的说明 动态添加表格行 文/Ray  表格部分代码如下: <table id="testTbl" border=1> <tr id="tr1"> <td width=6%><input type=checkbox id="box1"></td> <td id="b"&

Javascript动态创建表格及删除行列的方法

 本文实例讲述了Javascript动态创建表格及删除行列的方法.分享给大家供大家参考.具体实现方法如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68

javascript清空table表格的方法

  本文实例讲述了javascript清空table表格的方法.分享给大家供大家参考.具体如下: 1. 通常方法 循环table的rows,然后一个一个删除. 这个方法是通常的方法,可行,但是效率不好. 2. 另一个方法 ? 1 2 3 4 5 6 7 8 var artTable = document.getElementById("artical_table"); console.debug(artTable.getElementsByTagName("thead&quo

javascript动态创建表格及添加数据实例详解

  本文实例讲述了javascript动态创建表格及添加数据的方法.分享给大家供大家参考.具体分析如下: 1. 动态创建表格(代码不兼容IE6) ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv=&qu

javascript实现table表格隔行变色的方法

  本文实例讲述了javascript实现table表格隔行变色的方法.分享给大家供大家参考.具体实现方法如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 <html xmlns="http://www.w3.org/1

JavaScript实现DIV层拖动及动态增加新层的方法

  本文实例讲述了JavaScript实现DIV层拖动及动态增加新层的方法.分享给大家供大家参考.具体分析如下: 无刷新添加一个新的DIV层,并可实现的该层的拖动,鼠标拖动层可移动位置,将JS部分另存为一个新文件,用到的时候从外部引入,这个拖动层代码很流行,GG和YAHOO等大网站经常可以看到这种效果. ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35

javascript实现通过表格绘制颜色填充矩形的方法

这篇文章主要介绍了javascript实现通过表格绘制颜色填充矩形的方法,涉及javascript操作表格与样式的相关技巧,需要的朋友可以参考下 本文实例讲述了javascript实现通过表格绘制颜色填充矩形的方法.分享给大家供大家参考.具体如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 <html> <head> <title> Javascript画矩形 </title> <script

JavaScript动态改变表格单元格内容的方法

 这篇文章主要介绍了JavaScript动态改变表格单元格内容的方法,涉及javascript操作html中table表格的技巧,具有一定参考借鉴价值,需要的朋友可以参考下     本文实例讲述了JavaScript动态改变表格单元格内容的方法.分享给大家供大家参考.具体如下: JavaScript动态改变表格单元格的内容,下面的代码通过修改单元格的innerHTML来修改单元格内容 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21

JavaScript简单实现鼠标拖动选择功能

 本篇文章主要是对JavaScript简单实现鼠标拖动选择功能的示例代码进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助 代码如下: <style><!-- body{padding-top:50px;padding-left:100px;padding-right:150px;}   .fileDiv{float:left;width:100px;height:100px;text-align:center;line-height:100px;font-size:12px;bo