全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

使用javaScript实现鼠标拖拽事件

本文实例为大家分享了js实现鼠标拖拽事件的具体代码,供大家参考,具体内容如下

<html>
 <head>
  <meta charset="UTF-8">
  <title></title>

  <style>
   body{
    margin: 0;
    padding: 0;
   }
   div{
    position: absolute;
    top: 200px;/*div的y轴*/
    left: 150px;/*div的x轴*/
    width: 300px;
    height: 200px;
    background-color: gray;
   }
   div:hover{
    cursor: move;
   }
  </style>

  <script>

   /*
    * 分析:
    * 获取鼠标实时移动的坐标;m_move_x,m_move_y
    * 鼠标按下时的坐标;m_down_x,m_down_y
    * div的坐标;dx,dy
    * 鼠标按下时,鼠标与div的偏移量;md_x,md_y
    * div的新坐标;ndx,ndy
    */

   var isDown = false;//记录鼠标状态
   var move_div ;//要操作的div对象
   var m_move_x,m_move_y,m_down_x,m_down_y,dx,dy,md_x,md_y,ndx,ndy;

   //鼠标按下
   function down(){
    move_div = document.getElementById("move_div");
    isDown = true;

    //获取鼠标按下时坐标
    m_down_x = event.pageX;
    m_down_y = event.pageY;

    //获取div坐标
    dx = move_div.offsetLeft;
    dy = move_div.offsetTop;

    //获取鼠标与div偏移量
    md_x = m_down_x - dx;
    md_y = m_down_y - dy;
   }

   //鼠标移动
   function move(){
    move_div = document.getElementById("move_div");

    //实时更新div的坐标
    dx = move_div.offsetLeft;
    dy = move_div.offsetTop;

    //获取鼠标移动实时坐标
    m_move_x = event.pageX;
    m_move_y = event.pageY;

    //鼠标按下时移动才触发
    if(isDown){

     //获取新div坐标,鼠标实时坐标 - 鼠标与div的偏移量
     ndx = m_move_x - md_x;
     ndy = m_move_y - md_y;

     //把新div坐标值赋给div对象
     move_div.style.left = ndx+"px";
     move_div.style.top = ndy+"px";

    }

   }

   //鼠标释放
   function up(){
    isDown = false;
   }


  </script>

 </head>
 <body>

  <div id="move_div" onmousedown="down()" onmouseup="up()" onmousemove="move()"></div>

 </body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# js鼠标拖拽  # js鼠标拖拽事件  # js拖拽事件  # js实现拖拽效果  # 使用js实现的简单拖拽效果  # JS实现漂亮的窗口拖拽效果(可改变大小、最大化、最小化、关闭)  # JS实现的文件拖拽上传功能示例  # JS实现移动端触屏拖拽功能  # 前端原生js实现拖拽排课效果实例  # 鼠标  # 按下  # 偏移量  # 大家分享  # 具体内容  # 大家多多  # 拖拽  # 把新  # 坐标值  # 新坐标  # div  # position  # absolute  # background  # left  # margin  # padding  # width  # px  # top 


相关文章: 建站之星伪静态规则如何设置?  建站之星安装后如何自定义网站颜色与字体?  如何在IIS7上新建站点并设置安全权限?  如何登录建站主机?访问步骤全解析  车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?  微信小程序制作网站有哪些,微信小程序需要做网站吗?  如何在Ubuntu系统下快速搭建WordPress个人网站?  建站三合一如何选?哪家性价比更高?  历史网站制作软件,华为如何找回被删除的网站?  如何通过老薛主机一键快速建站?  建站之星免费模板:自助建站系统与智能响应式一键生成  微网站制作教程,不会写代码,不会编程,怎么样建自己的网站?  Android自定义listview布局实现上拉加载下拉刷新功能  内网网站制作软件,内网的网站如何发布到外网?  如何快速上传建站程序避免常见错误?  如何打造高效商业网站?建站目的决定转化率  实现点击下箭头变上箭头来回切换的两种方法【推荐】  建站之星价格显示格式升级,你的预算足够吗?  制作充值网站的软件,做人力招聘为什么要自己交端口钱?  网站制作壁纸教程视频,电脑壁纸网站?  专业制作网站的公司哪家好,建立一个公司网站的费用.有哪些部分,分别要多少钱?  如何选购建站域名与空间?自助平台全解析  如何通过NAT技术实现内网高效建站?  如何快速生成ASP一键建站模板并优化安全性?  如何在IIS中配置站点IP、端口及主机头?  常州企业网站制作公司,全国继续教育网怎么登录?  C++如何编写函数模板?(泛型编程入门)  高性能网站服务器配置指南:安全稳定与高效建站核心方案  C#如何序列化对象为XML XmlSerializer用法  购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?  大同网页,大同瑞慈医院官网?  美食网站链接制作教程视频,哪个教做美食的网站比较专业点?  c# 在ASP.NET Core中管理和取消后台任务  东莞专业网站制作公司有哪些,东莞招聘网站哪个好?  建站主机选择指南:服务器配置与SEO优化实战技巧  制作营销网站公司,淘特是干什么用的?  如何快速搭建响应式可视化网站?  建站之星多图banner生成与模板自定义指南  制作网站的过程怎么写,用凡科建站如何制作自己的网站?  正规网站制作公司有哪些,目前国内哪家网页网站制作设计公司比较专业靠谱?口碑好?  如何在云指建站中生成FTP站点?  如何通过FTP服务器快速搭建网站?  上海网站制作网站建设公司,建筑电工证网上查询系统入口?  存储型VPS适合搭建中小型网站吗?  *服务器网站为何频现安全漏洞?  定制建站策划方案_专业建站与网站建设方案一站式指南  如何高效配置香港服务器实现快速建站?  如何在Windows服务器上快速搭建网站?  开源网站制作软件,开源网站什么意思?  如何生成腾讯云建站专用兑换码? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。