jQuery拖拽div实现思路


Posted in Javascript onFebruary 19, 2014

思路是利用jquery的mousemove,mousedown,mouseup三个事件,定义两个相对位置,分别是

1、组件左上角与屏幕左上角的相对位置

2、鼠标所在坐标与组件左上角的相对位置。

具体函数如下:

.drag{ 
position:absolute; 
background:#0000CC; 
top:100px;left:200px; 
padding:0; 
}

$(document).ready(function(){ 
var move=false;//移动标记 
var _x,_y;//鼠标离控件左上角的相对位置 
$(".drag").mousedown(function(e){ 
move=true; 
_x=e.pageX-parseInt($(".drag").css("left")); 
_y=e.pageY-parseInt($(".drag").css("top")); 
}); 
$(document).mousemove(function(e){ 
if(move){ 
var x=e.pageX-_x;//控件左上角到屏幕左上角的相对位置 
var y=e.pageY-_y; 
$(".drag").css({"top":y,"left":x}); 
} 
}).mouseup(function(){ 
move=false; 
});

其中e.pageX,e.pageY为当前鼠标的横纵坐标。

大家自己动手试一下,思路就更加清晰了~

Javascript 相关文章推荐
JQUERY获取form表单值的代码
Jul 17 Javascript
jquery内置验证(validate)使用方法示例(表单验证)
Dec 04 Javascript
使用js获取图片原始尺寸
Dec 03 Javascript
jQuery的context属性用法实例
Dec 27 Javascript
javascript实现延时显示提示框特效代码
Apr 27 Javascript
更靠谱的H5横竖屏检测方法(js代码)
Sep 13 Javascript
jQuery实现的鼠标拖动浮层功能示例【拖动div等任何标签】
Dec 29 jQuery
使用javascript做时间倒数读秒功能的实例
Jan 23 Javascript
vue中更改数组中属性,在页面中不生效的解决方法
Oct 30 Javascript
Vue通过getAction的finally来最大程度避免影响主数据呈现问题
Apr 24 Javascript
vue相关配置文件详解及多环境配置详细步骤
May 19 Javascript
工作中常用js功能汇总
Nov 07 Javascript
JQuery异步加载无限下拉框级联功能实现示例
Feb 19 #Javascript
调用DOM对象的focus使文本框获得焦点
Feb 19 #Javascript
让jQuery Mobile不显示讨厌loading界面的方法
Feb 19 #Javascript
javascript动态向网页中添加表格实现代码
Feb 19 #Javascript
javascript实现动态侧边栏代码
Feb 19 #Javascript
返回上一页并自动刷新的JavaScript代码
Feb 19 #Javascript
js实现的GridView即表头固定表体有滚动条且可滚动
Feb 19 #Javascript
You might like
PHPMailer邮件发送的实现代码
2013/05/04 PHP
Yii框架数据模型的验证规则rules()被执行的方法
2016/12/02 PHP
Laravel学习基础之migrate的使用教程
2017/10/11 PHP
jquerymobile局部渲染的各种刷新方法小结
2014/03/05 Javascript
jquery动态更换设置背景图的方法
2014/03/25 Javascript
Node.js模块加载详解
2014/08/16 Javascript
nodejs命令行参数处理模块commander使用实例
2014/09/17 NodeJs
javascript正则表达式基础知识入门
2015/04/20 Javascript
分享两款带遮罩的jQuery弹出框
2015/12/30 Javascript
浅谈JavaScript对象与继承
2016/07/10 Javascript
IONIC自定义subheader的最佳解决方案
2016/09/22 Javascript
微信开发之调起摄像头、本地展示图片、上传下载图片实例
2016/12/08 Javascript
基于js实现二级下拉联动
2016/12/17 Javascript
JQuery实现动态操作表格
2017/01/11 Javascript
JavaScript实现网页头部进度条刷新
2017/04/16 Javascript
详解angularjs 关于ui-router分层使用
2017/06/12 Javascript
基于Vue生产环境部署详解
2017/09/15 Javascript
Mongoose中document与object的区别示例详解
2017/09/18 Javascript
详解利用 Express 托管静态文件的方法
2017/09/18 Javascript
微信小程序之 catalog 切换实现解析
2019/09/12 Javascript
JS性能优化实现方法及优点进行
2020/08/30 Javascript
使用Vant完成通知栏Notify的提示操作
2020/11/11 Javascript
[01:21]DOTA2新纪元-7.0新版本即将开启!
2016/12/11 DOTA
Python彩色化Linux的命令行终端界面的代码实例分享
2016/07/02 Python
Python通用循环的构造方法实例分析
2018/12/19 Python
python使用pip安装SciPy、SymPy、matplotlib教程
2019/11/20 Python
python 删除excel表格重复行,数据预处理操作
2020/07/06 Python
python 制作磁力搜索工具
2021/03/04 Python
html5实现移动端适配完美写法
2017/11/16 HTML / CSS
档案接收函范文
2014/01/10 职场文书
先进个人事迹材料
2014/12/29 职场文书
同意离婚答辩状
2015/05/22 职场文书
中考百日冲刺决心书
2015/09/22 职场文书
拥有这5个特征人,“命”都不会太差
2019/08/16 职场文书
用React Native制作一个简单的游戏引擎
2021/05/27 Javascript
JPA如何使用entityManager执行SQL并指定返回类型
2021/06/15 Java/Android