美文网首页
js实例——图层拖拽

js实例——图层拖拽

作者: blank的小粉er | 来源:发表于2017-07-20 10:28 被阅读0次
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        .box{
            width:200px;
            height:200px;
            background: orange;
            border:10px solid green;
            cursor:pointer;
            position:absolute;
            left:100px;
            top:20px;
        }
    </style>
</head>
<body>
    <h1>图层拖拽</h1>
    <hr>

    <div class="box" id="box"></div>

    <script>

        //获取box元素
        var div = document.getElementById('box');

        //给元素绑定 鼠标按键按下事件
        div.onmousedown = function(env){
            //改变背景色
            div.style.backgroundColor = "#999";
            //获取event对象
            var e = env || window.event;
            //求出 鼠标在 div上的位置
            var left = e.clientX - div.offsetLeft;
            var top = e.clientY - div.offsetTop;

            //求窗口的宽高
            var w = window.innerWidth;
            var h = window.innerHeight;


            //绑定鼠标 移动事件
            document.onmousemove = function(en){
                //获取event对象
                var e = en || window.event;
                //获取鼠标坐标
                var x = e.clientX;
                var y = e.clientY;
                //设置 div 的位置
                div.style.left = Math.min(Math.max(x - left, 0), w - 220) +'px';
                div.style.top = Math.min(Math.max(y - top, 0), h - 220)+ 'px';
            }
        }


        //鼠标按键抬起事件
        div.onmouseup = function(){
            div.style.backgroundColor = "orange";
            //解除 onmousemove 事件绑定
            document.onmousemove = function(){
                
            }
        }

    </script>
</body>
</html>

相关文章

  • js实例——图层拖拽

  • 事件高级(二)

    事件高级(二) 可重用的选项卡实例 限制范围的拖拽实例 磁性吸附的拖拽实例 解决拖拽问题一:选中文字 事件捕获:s...

  • 02-选区的布尔运算

    一、相关快捷键 ctrl+shift+alt+N:新建图层 删除图层的方法:1、直接拖拽要删除的图层到图层右下角的...

  • js拖拽html元素工具类

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

  • 李晨PS公开课

    一些知识 图层样式的复制:图层比较少时,可以按住Alt键拖拽fx效果按钮;图层比较多时,直接右键复制图层样式,选中...

  • 拖拽

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

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

    js实现拖拽

  • PS基础串讲三

    一、图层操作 1、复制图层 ①移动工具下,按住alt点击并拖拽可以复制,按住shift可以控制复制的图层水平或垂直...

  • jquery插件——拖拽自动排序

    前言 本插件主要应用于文字列表拖拽后自动排序,应用于ol或ul标签下。 步骤 css样式 html js 完整实例

  • js实现拖拽

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

网友评论

      本文标题:js实例——图层拖拽

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