js拖拽事件

Posted 做个机灵鬼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js拖拽事件相关的知识,希望对你有一定的参考价值。

拖拽

1.按下鼠标不放 onmousedown
2.鼠标移动 onmousemove
3.松开鼠标 onmouseup

监听事件采用并列写法

<script>
      window.onload = function () 
        /* 
            拖拽三步走
            1-按下鼠标 onmoudedown
            2-鼠标移动过程 onmousemove
            3-鼠标释放过程 onmuseup
            */
        var box = document.querySelector("div");
        var isMouseDown = false;
        var left = 0;
        var top = 0;
        box.addEventListener("mousedown",function (event) 
          //在键盘按住不放的事件是,要获取div的坐标
            isMouseDown = true;
            left = event.clientX - box.offsetLeft;
            top = event.clientY - box.offsetTop;
          ,false);
        document.addEventListener("mousemove",function (event) 
            if (isMouseDown) 
              var _x = event.clientX - left;
              var _y = event.clientY - top;

              box.style.left = _x + "px";
              box.style.top = _y + "px";
            
          ,false);
          document.addEventListener('mouseup',function(event)
              isMouseDown = false;
             
          ,false)
      ;
    </script>

以上是关于js拖拽事件的主要内容,如果未能解决你的问题,请参考以下文章

js 实现拖拽元素

JS中的鼠标事件,拖拽一个东西

d3.js svg 可以同时加拖拽和缩放事件吗

js拖拽事件

js拖拽功能的实现

JS简易拖拽效果