JavaScript簡單拖拽效果(1),javascript拖拽效果

來源:互聯網
上載者:User

JavaScript簡單拖拽效果(1),javascript拖拽效果

拖拽在前端開發中是很常見的功能,也是基本功之一,本文是不限制範圍的拖拽也就是最簡單的拖拽,滑鼠按下對象,拖拽,鬆開停止!
1,onmousedown事件
2,onmousemove事件
3,onmouseup事件

因為在按下時拖動,所以onmousemove事件在down後才註冊,up事件是用來解除綁定事件,消除事件!

<!DOCTYPE html><html><head>  <meta charset="utf-8">  <title>簡單拖拽</title>  <style type="text/css">    * {      margin: 0;      padding: 0;    }    #div1 {      width: 100px;      height: 100px;      background: orange;      position: absolute;    }  </style></head><body style="height: 500000px;">  <div id="div1"></div>  <script type="text/javascript">    function getStyle(obj, attr) {      if (obj.currentStyle) {        return obj.currentStyle[attr];      } else {        return getComputedStyle(obj, null)[attr];      }    }    var oDiv = document.getElementById('div1');    oDiv.onmousedown = function(ev) {      var oEvent = ev || event;      // var disX = oEvent.clientX - oDiv.offsetLeft;      // var disY = oEvent.clientY - oDiv.offsetTop;      var disX = oEvent.clientX - parseInt(getStyle(oDiv, 'left'));      var disY = oEvent.clientY - parseInt(getStyle(oDiv, 'top'));      document.onmousemove = function(ev) {        var oEvent = ev || event;        oDiv.style.left = oEvent.clientX - disX + 'px';        oDiv.style.top = oEvent.clientY - disY + 'px';      };      document.onmouseup = function() {        document.onmousemove = null;        document.onmouseup = null;      };      return false;    };  </script></body></html>

以上就是本文的全部內容,希望對大家的學習有所協助,也希望大家多多支援幫客之家。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.