尽可能短的拖动代码
- 发表于
- 前端
兼容所有浏览器,无BUG,看代码及演示:
1 2 3 4 5 |
<div id="demo" style="width: 100px; height: 100px; position: absolute; background: red; cursor: move;"></div> <script type="text/javascript">// <![CDATA[ function drag(o){var a="onmousemove",b="setCapture",c="releaseCapture",f="clientY",g="clientX",d=document,z=d.documentElement,x,y,t,l,w,h;o=d.getElementById(o);o.onmousedown=function(e){e=e||event;x=e[g]-o.offsetLeft;y=e[f]-o.offsetTop;d[a]=function(e){e=e||event;t=e[f]-y;l=e[g]-x;w=z.clientWidth-o.offsetWidth;h=z.clientHeight-o.offsetHeight;l<0&&(l=0);t<0&&(t=0);l>w&&(l=w);t>h&&(t=h);with(o.style){top=t+"px";left=l+"px"}};d.onmouseup=function(){d[a]=null;o[c]&&o[c]()};o[b]&&o[b]();return false}}; drag("demo"); // ]]></script> |
原文连接:尽可能短的拖动代码
所有媒体,可在保留署名、
原文连接
的情况下转载,若非则不得使用我方内容。