原生js实现简易拖拽

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title></title>
    </head>
    <body>
        <div id="container">
        </div>
    </body>
</html>
#container{
  position:relative;
  width: 50px;
  height: 50px;
  cursor: move;
  background: blue;
  top:60px;
  left:60px;
}
var c = document.getElementById("container");
function drag(o){
                var left,top,x,y,flag;
                o.onmousedown = function(e){
                    x = e.clientX;
                    y = e.clientY;
                    left =  parseInt(getComputedStyle(o,null).left);
                    top = parseInt(getComputedStyle(o,null).top);
                    flag = true;
                }
                document.onmouseup = function(){
                    flag = false;
                }
                document.onmousemove = function(e){
                    if(flag){
                        var tx = e.clientX;
                        var ty = e.clientY;
                        o.style.left = left + tx -x + 'px';
                        o.style.top = top + ty - y + 'px';
                        console.log(tx,ty);
                    }   
                }
            }
            drag(c);
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容