jQuery拖拽div,利用jquery的mousemove,mousedown,mouseup三個事件,需要的朋友可以參考下
思路是利用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為當前鼠標的橫縱坐標。 大家自己動手試一下,思路就更加清晰了~