• div 拖拽


    html

    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="UTF-8">
        <title>divDrag</title>
        <style>
          #div1{
             300px;
            height: 300px;
            background-color: #ccc;
            /*一定要绝对定位*/
            position: absolute;
          }
        </style>
      </head>
      <body>
        <div id="div1" class="box"></div>
        <script src="drag.js"></script>
      </body>
    </html>

    //js面向过程式写法

    window.onload = function(){
      var div1 = document.getElementById("div1");
      div1.onmousedown = function(ev){
        var oevent = ev || event;
    
        var distanceX = oevent.clientX - div1.offsetLeft;
        var distanceY = oevent.clientY - div1.offsetTop;
    
        document.onmousemove = function(ev){
          var oevent = ev || event;
          div1.style.left = oevent.clientX - distanceX + 'px';
          div1.style.top = oevent.clientY - distanceY + 'px'; 
        };
        document.onmouseup = function(){
          document.onmousemove = null;
          document.onmouseup = null;
        };
      ;
    };

    jquery
    $('.box').mousedown(function(ev) {
    var oevent = ev || event;
      var distanceX = oevent.clientX - oevent.currentTarget.offsetLeft;
      var distanceY = oevent.clientY - oevent.currentTarget.offsetTop;

    $(document).mousemove(function(ev) {
    var oevent = ev || event;
    $('.box').css('left', oevent.clientX - distanceX + 'px');
    $('.box').css('top', oevent.clientY - distanceY + 'px');
    });
    $(document).mouseup(function(ev) {
    $(document).unbind('mousemove');
    $(document).unbind('mouseup');
    });

    })
  • 相关阅读:
    通用测试用例(转载)
    微信小程序开发-使用阿里巴巴矢量图标
    flask框架启服务+json格式入参+postman获取上个接口的token作为下个接口的入参+关联接口【多测师_王sir】
    this.$set的正确使用
    vue中异步函数async和await的用法
    Tornado 异步协程coroutine原理
    nvm安装配置
    python基础
    数组for循环方法总结
    react 之props传值
  • 原文地址:https://www.cnblogs.com/zhouyx/p/10791288.html
Copyright © 2020-2023  润新知