<!DOCTYPE>
</p> <pre><code>function small_down(e1) { var div1 = document.getElementById("div1"); var osmall = document.getElementById("small"); var e1 = e1 || event; /*用于保存小的div拖拽前的坐标*/ osmall.startX = e1.clientX - osmall.offsetLeft; osmall.startY = e1.clientY - osmall.offsetTop; /*鼠标的移动事件*/ document.onmousemove = function(e1) { var e1 = e1 || event; osmall.style.left = e1.clientX - osmall.startX + "px"; osmall.style.top = e1.clientY - osmall.startY + "px"; /*对于大的DIV四个边界的判断*/ if (e1.clientX - osmall.startX <= 0) { osmall.style.left = 0 + "px"; } if (e1.clientY - osmall.startY <= 0) { osmall.style.top = 0 + "px"; } if (e1.clientX - osmall.startX >= 250) { osmall.style.left = 250 + "px"; } if (e1.clientY - osmall.startY >= 250) { osmall.style.top = 250 + "px"; } }; /*鼠标的抬起事件,终止拖动*/ document.onmouseup = function() { document.onmousemove = null; document.onmouseup = null; }; </code></pre> <p>}</p> <pre><code>function big_down(e){ </code></pre> <p> var div1 = document.getElementById("div1"); <br> div1.onmousedown = function(e){<br> var e = e || event;</p> <p> var distanceX = e.clientX - div1.offsetLeft;<br> var distanceY = e.clientY - div1.offsetTop;</p> <p> document.onmousemove = function(e){<br> var e = e || event;<br> div1.style.left = e.clientX - distanceX + 'px';<br> div1.style.top = e.clientY - distanceY + 'px'; <br> };<br> document.onmouseup = function(){<br> document.onmousemove = null;<br> document.onmouseup = null;<br> };<br> }; <br> } </p> <p>
<div id="small" onmousedown="small_down(event)" style="background:red;width:50px;height:50px;position:absolute; cursor: pointer;"></div>