拖拽功能的实现

.box {
            position: absolute;
            width: 100px;
            height: 100px;
            background-color: pink;
            top:50px;
            left:50px;
        }

<div class="box"></div>
    <script>
        var box = document.getElementsByClassName("box")[0];
        box.addEventListener("mousedown",function(e){
            //元素距离屏幕左、上边的距离
            var x1 = box.offsetLeft;
            var y1 = box.offsetTop;
            //鼠标距离页面的初始距离坐标
            var x2 = e.pageX;
            var y2 = e.pageY;
            document.addEventListener("mousemove",move);
            function move(e) {
                //元素初始的offsetLeft距离+鼠标移动的距离(当前鼠标坐标 - 初始鼠标坐标)
                box.style.left = x1 + e.pageX - x2 + "px";
                box.style.top = y1 + e.pageY - y2 + "px";
            }
            document.addEventListener("mouseup",function(){
                document.removeEventListener("mousemove",move);
            });
        });
    </script>
全部评论

相关推荐

专心打鱼:互联网搬运工,贴子都要偷
点赞 评论 收藏
分享
10-25 00:32
香梨想要offer:感觉考研以后好好学 后面能乱杀,目前这简历有点难
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务