|
<script type="text/javascript" language="javascript"> //为Number增加一个属性,判断当前数据类型是否是数字 Number.prototype.NaN0=function(){return isNaN(this)?0:this;}
//全局变量 var iMouseDown=false; var dragObject=null;
//获得鼠标的偏移量(对象2-对象1) function getMouseOffset(target,ev) { ev=ev||window.event; var docPos=getPosition(target); var mousePos=mouseCoords(ev); return {x:mousePos.x-docPos.x,y:mousePos.y-docPos.y}; }
//获得事件发生的实际位置----------------------对象1 function getPosition(e) { var left=0; var top=0; //相对位置累加得到实际位置 while(e.offsetParent) { left+=e.offsetLeft+(e.currentStyle?(parseInt(e.currentStyle.borderLeftWidth)).NaN0():0); top+=e.offsetTop+(e.currentStyle?(parseInt(e.currentStyle.borderTopWidth)).NaN0():0); e=e.offsetParent; } left+=e.offsetLeft+(e.currentStyle?(parseInt(e.currentStyle.borderLeftWidth)).NaN0():0); top+=e.offsetTop+(e.currentStyle?(parseInt(e.currentStyle.borderTopWidth)).NaN0():0); return {x:left,y:top}; } //获得发生事件鼠标的位置----------------------对象2 function mouseCoords(ev) { if(ev.pageX||ev.pageY) { return {x:ev.pageX,y:ev.pageY}; } return {x:ev.clientX+document.body.scrollLeft-document.body.clientLeft,y:ev.clientY+document.body.scrollTop-document.body.clientTop}; }
//定义可以拖拽的对象 function makeDragable(item) { if(!item) return; //为可拖拽对象定义一个onmousedown事件的方法 ev=window.event; item.onmousedown=function(ev) { dragObject=this; mouseOffset=getMouseOffset(this,ev); return false; } }
//定义鼠标点下所调用的方法 function mouseDown(ev) { ev=ev||window.event; var target=ev.target||ev.srcElement; if(target.onmousedown||target.getAttribute('DragObj')) { return false; } } //鼠标抬起后释放对象 function mouseUp(ev) { dragObject = null; //onmouseup事件触发时说明鼠标已经松开,所以设置down变量值为false iMouseDown = false; }
//鼠标移动 function mouseMove(ev) { ev=ev||window.event; var target = ev.target || ev.srcElement; var mousePos = mouseCoords(ev); if(dragObject) { if(dragObject.style) { //移动对象 dragObject.style.left=mousePos.x - mouseOffset.x; dragObject.style.top= mousePos.y - mouseOffset.y; } } //lMouseState = iMouseDown; if(dragObject) return false; } document.onmousedown=mouseDown; document.onmousemove=mouseMove; document.onmouseup=mouseUp;
function moveImg() { var img1=document.getElementById('img1'); makeDragable(img1); } </script> </head> <body onload="moveImg()"> <form id="form1" runat="server"> <div> <img src="a.jpg" alt="" id="img1" style="position:absolute;left:0px;top:0px;" /> </div> </form> </body> </html>
[办公软件]如何在PowerPoint中使用(插入)Media Player控件播… [Web开发]Visual Studio.Net鲜为人知的技巧 [平面设计]Emotion 3D Web Edition为您制作出动感十足的网页… [网页制作]什么是CSS+DIV [网页制作]让Div中的文字(文本)垂直居中显示(对齐)—简单代码… [网页制作]CSS+DIV制作圆角边框,无须使用图片 [网页制作]DreamWeaver+Css轻松实现网页段落首行缩进! [网页制作]DIV+CSS+javascript实现DIV对象显示在页面任何位置… [网页制作]XHTML+CSS兼容性解决方案 [网页制作]网页设计之css+div PK table+css
|