• 拖拽


         今天来说下  拖拽效果,纯手工。下面会有代码和注释。

    首先,要想能拖动div就考虑到三个事件,鼠标按下  鼠标拖动   鼠标松开。

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title></title>
    <style>
    /*给div来些样式 最主要的是绝对定位*/
    #dIv{
    100px;
    height: 100px;
    background: red;
    position: absolute;
    }
    </style>
    </head>
    <body>
    <div id="dIv"></div>
    <script>
    //获取我们的div
    var dIv = document.getElementById("dIv");
    //鼠标按下 获取event事件
    dIv.onmousedown=function(e){
    var e = event || window.event;
    //dis 指的是鼠标的当前位置 减去 div距离屏幕左边的距离 也就是鼠标的位置距离到div左外边框的位置
    var dis = e.clientX - dIv.offsetLeft;
    //dir 指的是鼠标的当前位置 减去div距离屏幕上边的距离 也就是鼠标的位置距离到div上外边框的位置
    var dir = e.clientY - dIv.offsetTop;
    //鼠标移动事件
    document.onmousemove=function(e){
    var e = event || window.event;
    //l 就是div要左右移动的距离 拖动时鼠标的位置减去 dis
    var l = e.clientX-dis;
    //x 就是div要上下移动的距离 拖动时鼠标的位置减去 dir
    var x = e.clientY-dir;
    dIv.style.left=l+"px";
    dIv.style.top=x+"px";
    //鼠标松开事件 鼠标松开时
    document.onmouseup=function(){
    //把鼠标按下事件 和移动事件 清除 为零
    document.onmousedown=null;
    document.onmousemove=null;
    }
    }
    }
    </script>
    </body>
    </html>

  • 相关阅读:
    dart的map方法如何获取index
    Flutter学习(一)——创建一个项目
    springcloudOpenFeign在实际工作使用场景
    springcloud:config搭配bus使用
    springcloud:一篇学会springcloud config
    springcloud一篇搞定GateWay
    springcloud一篇搞定Hystrix
    Dockerfile实践二 爱我
    Redis小结 爱我
    程序员必备知识点 爱我
  • 原文地址:https://www.cnblogs.com/Rzyy/p/7015622.html
Copyright © 2020-2023  润新知