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+PHP+Mysql实现抽奖程序
Apr 12 jQuery
jquery.guide.js新版上线操作向导镂空提示jQuery插件(推荐)
May 20 jQuery
QRCode.js:基于JQuery的生成二维码JS库的使用
Jun 23 jQuery
基于jQuery实现的Ajax 验证用户名唯一性实例代码
Jun 28 jQuery
jQuery 禁止表单用户名、密码自动填充功能
Oct 30 jQuery
基于jQuery中ajax的相关方法汇总(必看篇)
Nov 08 jQuery
学习jQuery中的noConflict()用法
Sep 28 jQuery
jQuery实现点击旋转,再点击恢复初始状态动画效果示例
Dec 11 jQuery
jquery3和layui冲突导致使用layui.layer.full弹出全屏iframe窗口时高度152px问题
May 12 jQuery
jquery ui 实现 tab标签功能示例【测试可用】
Jul 25 jQuery
jQuery使用ajax传递json对象到服务端及contentType的用法示例
Mar 12 jQuery
jquery实现简单拖拽效果
Jul 20 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 导出数据到淘宝助手CSV的方法分享
2010/02/27 PHP
PHP安全的URL字符串base64编码和解码
2014/06/19 PHP
JavaScript 特殊字符
2007/04/05 Javascript
javascript new 需不需要继续使用
2009/07/02 Javascript
Jquery+JSon 无刷新分页实现代码
2010/04/01 Javascript
JQUERY获取form表单值的代码
2010/07/17 Javascript
javascript 使用 NodeList需要注意的问题
2013/03/04 Javascript
innerHTML,outerHTML,innerText,outerText的用法及区别解析
2013/12/16 Javascript
zepto.js中tap事件阻止冒泡的实现方法
2015/02/12 Javascript
JQuery为元素添加样式的实现方法
2016/07/20 Javascript
js实现随机抽选效果、随机抽选红色球效果
2017/01/13 Javascript
jQuery简易时光轴实现方法示例
2017/03/13 Javascript
JavaScript实现三级联动效果
2017/07/15 Javascript
js前端导出Excel的方法
2017/11/01 Javascript
VUE element-ui 写个复用Table组件的示例代码
2017/11/18 Javascript
layui table 复选框跳页后再回来保持原来选中的状态示例
2019/10/26 Javascript
node.js实现http服务器与浏览器之间的内容缓存操作示例
2020/02/11 Javascript
带你使用webpack快速构建web项目的方法
2020/11/12 Javascript
Python中的自省(反射)详解
2015/06/02 Python
python中json格式数据输出的简单实现方法
2016/10/31 Python
解决Django模板无法使用perms变量问题的方法
2017/09/10 Python
flask中过滤器的使用详解
2018/08/01 Python
python修改txt文件中的某一项方法
2018/12/29 Python
理想高通滤波实现Python opencv示例
2019/01/30 Python
Python解析多帧dicom数据详解
2020/01/13 Python
在ipython notebook中使用argparse方式
2020/04/20 Python
Skyscanner阿联酋:全球领先的旅游搜索平台
2017/11/25 全球购物
介绍一下write命令
2014/08/10 面试题
幼师自我鉴定范文
2013/10/01 职场文书
英语教师求职信
2014/06/16 职场文书
个人学习群众路线心得体会
2014/11/05 职场文书
2015元旦标语横幅
2014/12/09 职场文书
2015年个人思想总结
2015/03/09 职场文书
2015年反腐倡廉工作总结
2015/05/14 职场文书
奇妙的 CSS shapes(CSS图形)
2021/04/05 HTML / CSS
搞笑Gif:这么白这么长的腿像极了一楼的女朋友
2022/03/21 杂记