zoukankan      html  css  js  c++  java
  • js 拖拽

    <!DOCTYPE html>
    <html lang="en">
    
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
        <script src="http://apps.bdimg.com/libs/jquery/1.9.1/jquery.min.js"></script>
        <style>
            #draw {
                 450px;
                height: 450px;
                border: 2px solid #ccc;
                position: relative;
                top: 10px;
                left: 10px;
                cursor: pointer;
            }
    
            .content {
                background-color: chartreuse;
                 400px;
                height: 400px;
                overflow: scroll;
            }
        </style>
    
    </head>
    
    <body>
        <div style=" 200px;height: 200px;overflow: scroll;">
            <div class="content" id="draw">
                <!-- <div id="draw"></div> -->
                <table>
                    <thead>
                        <tr>
                            <td>第1列</td>
                            <td>第2列</td>
                            <td>第3列</td>
                            <td>第4列</td>
                            <td>第5列</td>
                            <td>第6列</td>
                            <td>第7列</td>
                            <td>
                                <input type="text">
                            </td>
                            <td><select name="" id="">
                                    <option value="1">测试1</option>
                                    <option value="1">测试2</option>
                                </select></td>
                            <td>第10列</td>
                        </tr>
                    </thead>
                    <tbody>
                        <tr>
                            <td>rows第1列</td>
                            <td>rows第2列</td>
                            <td>rows第3列</td>
                            <td>rows第4列</td>
                            <td>rows第5列</td>
                            <td>rows第6列</td>
                            <td>rows第7列</td>
                            <td>
                                <input type="text">
                            </td>
                            <td><select name="" id="">
                                    <option value="1">测试1</option>
                                    <option value="1">测试2</option>
                                </select></td>
                            <td>rows第10列</td>
                        </tr>
                        <tr>
                            <td>rows第1列</td>
                            <td>rows第2列</td>
                            <td>rows第3列</td>
                            <td>rows第4列</td>
                            <td>rows第5列</td>
                            <td>rows第6列</td>
                            <td>rows第7列</td>
                            <td>
                                <input type="text">
                            </td>
                            <td><select name="" id="">
                                    <option value="1">测试1</option>
                                    <option value="1">测试2</option>
                                </select></td>
                            <td>rows第10列</td>
                        </tr>
                        <tr>
                            <td>rows第1列</td>
                            <td>rows第2列</td>
                            <td>rows第3列</td>
                            <td>rows第4列</td>
                            <td>rows第5列</td>
                            <td>rows第6列</td>
                            <td>rows第7列</td>
                            <td>
                                <input type="text">
                            </td>
                            <td><select name="" id="">
                                    <option value="1">测试1</option>
                                    <option value="1">测试2</option>
                                </select></td>
                            <td>rows第10列</td>
                        </tr>
                        <tr>
                            <td>rows第1列</td>
                            <td>rows第2列</td>
                            <td>rows第3列</td>
                            <td>rows第4列</td>
                            <td>rows第5列</td>
                            <td>rows第6列</td>
                            <td>rows第7列</td>
                            <td>
                                <input type="text">
                            </td>
                            <td><select name="" id="">
                                    <option value="1">测试1</option>
                                    <option value="1">测试2</option>
                                </select></td>
                            <td>rows第10列</td>
                        </tr>
                        <tr>
                            <td>rows第1列</td>
                            <td>rows第2列</td>
                            <td>rows第3列</td>
                            <td>rows第4列</td>
                            <td>rows第5列</td>
                            <td>rows第6列</td>
                            <td>rows第7列</td>
                            <td>
                                <input type="text">
                            </td>
                            <td><select name="" id="">
                                    <option value="1">测试1</option>
                                    <option value="1">测试2</option>
                                </select></td>
                            <td>rows第10列</td>
                        </tr>
                        <tr>
                            <td>rows第1列</td>
                            <td>rows第2列</td>
                            <td>rows第3列</td>
                            <td>rows第4列</td>
                            <td>rows第5列</td>
                            <td>rows第6列</td>
                            <td>rows第7列</td>
                            <td>
                                <input type="text">
                            </td>
                            <td><select name="" id="">
                                    <option value="1">测试1</option>
                                    <option value="1">测试2</option>
                                </select></td>
                            <td>rows第10列</td>
                        </tr>
                        <tr>
                            <td>rows第1列</td>
                            <td>rows第2列</td>
                            <td>rows第3列</td>
                            <td>rows第4列</td>
                            <td>rows第5列</td>
                            <td>rows第6列</td>
                            <td>rows第7列</td>
                            <td>
                                <input type="text">
                            </td>
                            <td><select name="" id="">
                                    <option value="1">测试1</option>
                                    <option value="1">测试2</option>
                                </select></td>
                            <td>rows第10列</td>
                        </tr>
                        <tr>
                            <td>rows第1列</td>
                            <td>rows第2列</td>
                            <td>rows第3列</td>
                            <td>rows第4列</td>
                            <td>rows第5列</td>
                            <td>rows第6列</td>
                            <td>rows第7列</td>
                            <td>
                                <input type="text">
                            </td>
                            <td><select name="" id="">
                                    <option value="1">测试1</option>
                                    <option value="1">测试2</option>
                                </select></td>
                            <td>rows第10列</td>
                        </tr>
                        <tr>
                            <td>rows第1列</td>
                            <td>rows第2列</td>
                            <td>rows第3列</td>
                            <td>rows第4列</td>
                            <td>rows第5列</td>
                            <td>rows第6列</td>
                            <td>rows第7列</td>
                            <td>
                                <input type="text">
                            </td>
                            <td><select name="" id="">
                                    <option value="1">测试1</option>
                                    <option value="1">测试2</option>
                                </select></td>
                            <td>rows第10列</td>
                        </tr>
                    </tbody>
                </table>
            </div>
        </div>
        <script>
            var oDiv = document.getElementById("draw");
            var x, y, xw, yw;
            oDiv.onmousedown = function (ev) {
                e = event || ev;
                x = e.clientX;
                y = e.clientY;
                xw = y - oDiv.offsetTop;  // 初始y点距上边框的距离
                yw = x - oDiv.offsetLeft;   //初始x点距左边框的距离
                console.log("onmousedown:" + "x:" + x + ",y:" + y + ",xw:" + xw + ",xy")
                document.onmousemove = function (ev) {
                    e = event || ev;
                    // console.dir(oDiv.offsetLeft + "," + oDiv.offsetTop)
    
                    if (e.clientY <= 0 && e.clientX > 0) {
                        oDiv.style.left = e.clientX - yw + "px";
                        oDiv.style.top = "0px";
                    } else if (e.clientY > 0 && e.clientX <= 0) {
                        oDiv.style.left = "0px";
                        oDiv.style.top = e.clientY - xw + "px";
                    } else {
                        oDiv.style.left = e.clientX - yw + "px";
                        oDiv.style.top = e.clientY - xw + "px";
                    }
    
                };
            }
            document.onmouseup = function (event) {
                e = event || ev;
                // console.dir("up:" + oDiv.offsetLeft + "," + oDiv.offsetTop + "---xw:" + xw + ",xy:" + yw)
                // console.log("s_left:" + oDiv.style.left + ",s_top:" + oDiv.style.top);
                // oDiv.style.left = oDiv.style.left > 0 ? oDiv.style.left : 0;
                // oDiv.style.top = oDiv.style.top > 0 ? oDiv.style.top : 0;
                document.onmousemove = null;
            };
        </script>
    </body>
    
    </html>
    

      

  • 相关阅读:
    Delphi 与 DirectX 之 DelphiX(60): TDIB.DoTrace();
    Delphi 与 DirectX 之 DelphiX(62): TDIB.DoSolorize();
    Delphi 与 DirectX 之 DelphiX(55): TDIB.DoMosaic();
    利用ImportFromRSS可以方便地收藏其他网站的文章
    粘贴代码更简单的方法(保持VS.NET中的格式)
    请正确填写你的邮件地址
    介绍.Text 中的TrackBack
    在VS.NET中给xsl文件增加智能感知功能
    The Difference Between RegisterStartupScript and RegisterClientScriptBlock
    [转帖]Why you can't catch some exceptions
  • 原文地址:https://www.cnblogs.com/guozhe/p/14946494.html
Copyright © 2011-2022 走看看