<strong>1:移动图层 获得点的x轴y轴坐标,从而进行绝对定位(注意:竖拉框会影响 x 轴 y 轴坐标值)</strong> <br><div class="codetitle"> <span><a style="CURSOR: pointer" data="51317" class="copybut" id="copybut51317" onclick="doCopy('code51317')"><u>复制代码</u></a></span> 代码如下:</div> <div class="codebody" id="code51317"> <br>var x,y,z,down=false,obj <br>function init(){ <br>obj=event.srcElement //事件触发对象 <br>obj.setCapture() //设置属于当前对象的鼠标捕捉 <br>z=obj.style.zIndex //获取对象的z轴坐标值 <br>//设置对象的z轴坐标值为100,确保当前层显示在最前面 <br>obj.style.zIndex=100 <br>x=event.offsetX //获取鼠标指针位置相对于触发事件的对象的X坐标 <br>y=event.offsetY //获取鼠标指针位置相对于触发事件的对象的Y坐标 <br>down=true //布尔值,判断鼠标是否已按下,true为按下,false为未按下 <br>} <br>function moveit(){ <br>//判断鼠标已被按下且onmouseover和onmousedown事件发生在同一对象上 <br>if(down&&event.srcElement==obj){ <br>with(obj.style){ <br>/*设置对象的X坐标值为文档在X轴方向上的滚动距离加上当前鼠标指针相当于文档对象的X坐标值减鼠标按下时指针位置相对于触发事件的对象的X坐标*/ <br>// posLeft=event.x-x; <br>posLeft=document.body.scrollLeft+event.x-x; <br>/*设置对象的Y坐标值为文档在Y轴方向上的滚动距离加上当前鼠标指针相当于文档对象的Y坐标值减鼠标按下时指针位置相对于触发事件的对象的Y坐标*/ <br>// posTop=event.y-y; <br>posTop=document.body.scrollTop+event.y-y; <br>window.status="posLeft="+posLeft+",posTop="+posTop; <br>window.status=window.status+"clientX="+event.clientX+"clientY="+event.clientY+"scrollLeft="+document.body.scrollLeft+"scrollTop="+document.body.scrollTop+",event.y="+event.y+",event.x"+event.x; <br>} <br>} <br>} <br>function stopdrag(){ <br>//onmouseup事件触发时说明鼠标已经松开,所以设置down变量值为false <br>down=false <br>obj.style.zIndex=z //还原对象的Z轴坐标值 <br>obj.releaseCapture() //释放当前对象的鼠标捕捉 <br>//alert("X:"+obj.style.left+";Y:"+obj.style.top); <br>} <br><br> </div> <br><strong>2:为了使图层在不同分辨率浏览器上显示同样的效果,我们需要对图层定位设置</strong> <br><br><strong>第一步:对最外层 进行相对定位 <br></strong><br><div class="codetitle"> <span><a style="CURSOR: pointer" data="43032" class="copybut" id="copybut43032" onclick="doCopy('code43032')"><u>复制代码</u></a></span> 代码如下:</div> <div class="codebody" id="code43032"> <br><div id="t" style="position:relative;top:0px;left:0px;"> </div> <br> </div> <br><br><strong>第二步:在相对里面进行决对定位(这样图层就不会随着分辨率的改变而变形)</strong> <br><div class="codetitle"> <span><a style="CURSOR: pointer" data="21005" class="copybut" id="copybut21005" onclick="doCopy('code21005')"><u>复制代码</u></a></span> 代码如下:</div> <div class="codebody" id="code21005"> <br><div id="t" style="position:relative;top:0px;left:0px;"> <br><div id="tt" style="position:absolute;top:9px;left:317px;"> <br><img id="hong" src="main/1.jpg" style="max-width:90%" style="max-width:90%" border="0" alt="JavaScript与Div对层定位和移动获得坐标的实现代码_javascript技巧" >ALT="" /> <br> </div> <br><div>省略</div> <br><div>省略</div> <br><div>省略</div> <br><div>省略</div> <br><div>省略</div> <br><div>省略</div> <br><div>省略</div> <br><div>省略</div> <br><div>省略</div> <br> </div> <br>//===================(层移动方法调用)============================= <br><div class="codetitle"> <span><a style="CURSOR: pointer" data="60526" class="copybut" id="copybut60526" onclick="doCopy('code60526')"><u>复制代码</u></a></span> 代码如下:</div> <div class="codebody" id="code60526"> <br><div onmousedown="init()" onmousemove="moveit()">onmouseup=stopdrag() <br>style="position:absolute;left:60;top:190;width:5;height:5;z-index:99;;border:1px solid #000000;"> <br>D <br> </div> <br> </div> <br> </div>