jQuery实现div跟随鼠标移动


Posted in jQuery onAugust 20, 2020

重点是弄清楚如何获取鼠标现位置与移动后位置,div现在位置与移动后位置:

用jQuery实现div随鼠标移动而移动,不是鼠标自身的位置!!而是div相对于之前位置的移动

代码如下:(注意看绿色部分的解释)

<!DOCTYPE html>
<html>
 <head>
  <meta charset="{utf-8}">
  <title></title>
  <script src="../jquery-3.2.0.js"></script>
  <style>
   .aa{
    height: 100px;
    width: 200px;
    position: absolute;
    background-color: green;
   }
  </style>
 </head>
 <body>
  <div class="aa"></div>
 </body>
</html>
<script>
 $(".aa").mousedown(function(e){
  //设置移动后的默认位置
  var endx=0;
  var endy=0;

  //获取div的初始位置,要注意的是需要转整型,因为获取到值带px
  var left= parseInt($(".aa").css("left"));
  var top = parseInt($(".aa").css("top"));

  //获取鼠标按下时的坐标,区别于下面的es.pageX,es.pageY
  var downx=e.pageX;
  var downy=e.pageY;  //pageY的y要大写,必须大写!!

  // 鼠标按下时给div挂事件
 $(".aa").bind("mousemove",function(es){

  //es.pageX,es.pageY:获取鼠标移动后的坐标
  var endx= es.pageX-downx+left;  //计算div的最终位置
  var endy=es.pageY-downy+top;

  //带上单位
  $(".aa").css("left",endx+"px").css("top",endy+"px") 
 }); 
 })
 

 $(".aa").mouseup(function(){
  //鼠标弹起时给div取消事件
  $(".aa").unbind("mousemove")
 })
 
</script>

区别于下面这段代码:(最终实现效果是div随鼠标位置移动,具体效果想看的可以粘贴复制对比看看差距在哪)

<script>
$(".aa").mousedown(function(e){
 $(document).bind("mousemove",function(e){
  $(".aa").css("left",e.pageX).css("top",e.pageY)
 });
})
 $(".aa").mouseup(function(){
  $(document).unbind("mousemove")
 })
 </script>

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

jQuery 相关文章推荐
jQuery插件select2利用ajax高效查询大数据列表(可搜索、可分页)
May 19 jQuery
浅谈jQuery框架Ajax常用选项
Jul 08 jQuery
jQuery实现简单的回到顶部totop功能示例
Oct 16 jQuery
jQuery中可见性过滤器简单用法示例
Mar 31 jQuery
jQuery实现的淡入淡出图片轮播效果示例
Aug 29 jQuery
jQuery实现的简单歌词滚动功能示例
Jan 07 jQuery
jQuery事件委托代码实践详解
Jun 21 jQuery
jQuery实现的图片点击放大缩小功能案例
Jan 02 jQuery
jquery添加div实现消息聊天框
Feb 08 jQuery
JQuery插件tablesorter表格排序实现过程解析
May 28 jQuery
基于jquery实现彩色投票进度条代码解析
Aug 26 jQuery
jQuery实现推拉门效果
Oct 19 jQuery
jquery+ajax实现省市区三级联动 (封装和不封装两种方式)
May 15 #jQuery
Jquery把获取到的input值转换成json
May 15 #jQuery
jQuery实现radio第一次点击选中第二次点击取消功能
May 15 #jQuery
jQuery返回定位插件详解
May 15 #jQuery
jQuery操作css样式
May 15 #jQuery
jQuery插件FusionCharts绘制的2D条状图效果【附demo源码】
May 13 #jQuery
jQuery插件FusionCharts绘制的2D双柱状图效果示例【附demo源码】
May 13 #jQuery
You might like
PHP错误WARNING: SESSION_START() [FUNCTION.SESSION-START]解决方法
2014/05/04 PHP
Zend Framework实现Zend_View集成Smarty模板系统的方法
2016/03/05 PHP
利用PHPStorm如何开发Laravel应用详解
2017/08/30 PHP
PHP解析url并得到url参数方法总结
2018/10/11 PHP
做网页的一些技巧(续)
2007/02/01 Javascript
Dom与浏览器兼容性说明
2010/10/25 Javascript
Android中资源文件(非代码部分)的使用概览
2012/12/18 Javascript
js仿百度登录页实现拖动窗口效果
2016/03/11 Javascript
canvas实现动态小球重叠效果
2017/02/06 Javascript
详解Vue方法与事件
2017/03/09 Javascript
Canvas放置反弹效果随机图形(实例)
2017/08/17 Javascript
jQuery实现广告条滚动效果
2017/08/22 jQuery
10行原生JS实现文字无缝滚动(超简单)
2018/01/02 Javascript
JavaScript引用类型Function实例详解
2018/08/09 Javascript
nodejs微信开发之授权登录+获取用户信息
2019/03/17 NodeJs
JS加载解析Markdown文档过程详解
2020/05/19 Javascript
JavaScript字符和ASCII实现互相转换
2020/06/03 Javascript
python获得linux下所有挂载点(mount points)的方法
2015/04/29 Python
PyQt5每天必学之弹出消息框
2018/04/19 Python
python 删除非空文件夹的实例
2018/04/26 Python
python梯度下降法的简单示例
2018/08/31 Python
python实现弹窗祝福效果
2019/04/07 Python
很酷的python表白工具 你喜欢我吗
2019/04/11 Python
Python3 虚拟开发环境搭建过程(图文详解)
2020/01/06 Python
通过python 执行 nohup 不生效的解决
2020/04/16 Python
Python使用sqlite3模块内置数据库
2020/05/07 Python
keras 获取某层输出 获取复用层的多次输出实例
2020/05/23 Python
基于python实现复制文件并重命名
2020/09/16 Python
用HTML5实现手机摇一摇的功能的教程
2012/10/30 HTML / CSS
农村面貌改造提升实施方案
2014/03/18 职场文书
高一学生期末评语
2014/04/25 职场文书
我的中国梦演讲稿1000字
2014/08/19 职场文书
好员工观后感
2015/06/17 职场文书
趣味运动会广播稿
2015/08/19 职场文书
初一语文教学反思
2016/03/03 职场文书
领导激励员工的演讲稿,各种会上用得到,建议收藏
2019/08/13 职场文书