欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

jQuery拖拽div实现思路

程序员文章站 2023-11-10 14:01:28
思路是利用jquery的mousemove,mousedown,mouseup三个事件,定义两个相对位置,分别是 1、左上角与屏幕左上角的相对位置 2、鼠标所在坐标与组...

思路是利用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为当前鼠标的横纵坐标。

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