美文网首页
js之好玩的拖拽

js之好玩的拖拽

作者: 周周很可爱 | 来源:发表于2019-10-21 20:44 被阅读0次

拖拽功能主要是用在让用户做一些自定义的动作,比如拖动排序,弹出框拖动移动等等,效果还是蛮不错的。下面讲解一下拖拽如何实现。

html样式

 <div id="div"></div>

css样式

      #div {
        position: absolute;
        width: 0px;
        height: 0px;
        background-color: rgba(0, 0, 0, .2);
        border: 1px solid #ccc;
      }

js样式

    var downX = 0,
    downY = 0,
   // var e =window.event || e.event;
    flag = false;
window.onmousedown = function (e) {
    downX = e.clientX;
    downY = e.clientY;
    flag = true;
}

window.onmousemove = function (e) {


    if (flag) {
        var moveX = e.clientX;
        var moveY = e.clientY;
    
        // div.style.left = Math.min(moveX, downX) + 'px';
        // div.style.top = Math.min(moveY, downY) + 'px';

        // div.style.width = Math.abs(moveX - downX) + 'px';
        // div.style.height = Math.abs(moveY - downY) + 'px';

        // 如果向右
        if (moveX >= downX) {
            div.style.left = downX + 'px';
            div.style.width = moveX - downX + 'px';
        }

        // 如果向下
        if (moveY >= downY) {
            div.style.top = downY + 'px';
            div.style.height = moveY - downY + 'px';
        }


        // 向上
        if (moveY < downY) {
            div.style.top = moveY + 'px';
            div.style.height = downY - moveY + 'px';
        }

        // 如果向左
        if (moveX < downX) {
            div.style.left = moveX + 'px';
            div.style.width = downX - moveX + 'px';
        }
    }
}

window.onmouseup = function () {
    flag = false;
    div.style.cssText = '';
}
WechatIMG334.png
WechatIMG335.png

这个就是实现代码,是不是很好玩呢?有空可以试试哟

相关文章

  • js之好玩的拖拽

    拖拽功能主要是用在让用户做一些自定义的动作,比如拖动排序,弹出框拖动移动等等,效果还是蛮不错的。下面讲解一下拖拽如...

  • js中好玩的案例之拖拽

    学习js的过程中,相信大家都学过拖拽这个案例吧,那么怎么让拖拽变得更高级,更好玩呢,下面给大家讲一下,下图是最终实...

  • js拖拽html元素工具类

    复制就能用的拖拽js方法 原生js实现拖拽元素方法 使用(注意拖拽目标元素需绝对定位 position: 'abs...

  • JS 实现拖拽之 - 列表拖拽

    这次的列表拖拽模型主要模仿的就是简书后台写文章里面的功能。上个九宫格拖拽只是这次的一个意外。研究完上个模型再写这个...

  • Drag Drop---API

    在h4标准中,我们定义个拖拽事件是很麻烦的,用原生的js来实现拖拽的效果。我们需要计算拖拽的元素的坐标位置和距离之...

  • 拖拽

    一、JS拖拽JS里拖拽三事件, onmousedown onmousemove onmouseup 是实现交互性效...

  • 原生js实现拖拽(碰撞检测)

    js实现拖拽

  • js实现拖拽

    ①鼠标按下+鼠标移动 → 拖拽②鼠标松开 → 无拖拽③鼠标偏移 → 拖拽距离 js实现 ① onmousedown...

  • h5拖拽相关事件

    拖拽 Sortable.js插件拖拽的时候主要由这几个事件完成,

  • jquery html5 Sortable.js 拖拽排序源码分

    最近公司项目经常用到一个拖拽 Sortable.js插件,所以有空的时候看了 Sortable.js 源码拖拽的时...

网友评论

      本文标题:js之好玩的拖拽

      本文链接:https://www.haomeiwen.com/subject/nmsxvctx.html