JS拖动技术--- 关于setCapture

it2024-07-21  72

<script type="text/javascript"><!--window.οnlοad=function(){  objDiv = document.getElementById('drag');  drag(objDiv);};

function drag(dv){  dv.οnmοusedοwn=function(e){      var d=document;      e = e || window.event;            var x= e.layerX || e.offsetX;      var y= e.layerY || e.offsetY;            //设置捕获范围      if(dv.setCapture){          dv.setCapture();      }else if(window.captureEvents){          window.captureEvents(Event.MOUSEMOVE | Event.MOUSEUP);      }     

      d.οnmοusemοve=function(e){           e= e || window.event;           if(!e.pageX)e.pageX=e.clientX;           if(!e.pageY)e.pageY=e.clientY;           var tx=e.pageX-x;           var ty=e.pageY-y;                      dv.style.left=tx;           dv.style.top=ty;      };

      d.οnmοuseup=function(){           //取消捕获范围           if(dv.releaseCapture){              dv.releaseCapture();           }else if(window.captureEvents){              window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP);           }                     //清除事件          d.οnmοusemοve=null;          d.οnmοuseup=null;      };   };}//--></script><div id="drag" style="position:absolute;left:12px;top:24px;width:100;height:150;border:1px solid #000000;z-index:1;background:#eeeeee">drag me</div>

转载于:https://www.cnblogs.com/yuteng/articles/1977196.html

最新回复(0)