js层拖拽,兼容IE、谷歌、火狐
当前位置:点晴教程→知识管理交流
→『 技术文档交流 』
一个简单的拖拽研究了快一周,恶心的我呦...好在终于整明白了,下面和大家一起交流下。
拖拽原理:
鼠标按下时,记录当前鼠标和拖动层的坐标,并且拖动状态设为可拖动;
鼠标移动时,判断拖动状态,如果可拖动,那么根据当前的鼠标坐标以及鼠标按下时记录的初始坐标,计算出拖动层的位置,实行拖动;
鼠标弹起时,将拖动状态改为不可拖动。
[code]
<script language="javascript">
var X0,Y0;
var dragAble=false;
var dragObj;
document.onmousedown=function(e){
var oDragHandle=e? e.target:event.srcElement;
if(oDragHandle.className=='move')
{
dragObj=oDragHandle;
e=e||event;
eX0= e.clientX;
eY0= e.clientY;
X0=parseInt(dragObj.style.left+0);
Y0=parseInt(dragObj.style.top+0);
dragAble=true;
}
}
document.onmousemove=function(e){
if(dragObj)
{
e=e||event;
var eX1= e.clientX;
var eY1= e.clientY;
dragObj.style.left=X0+eX1-eX0+"px";
dragObj.style.top=Y0+eY1-eY0+"px";
}
}
document.onmouseup=function(e){
if(dragObj) dragObj=null;
}
</script>
[/code]
该文章在 2013/7/12 13:29:22 编辑过 |
关键字查询
相关文章
正在查询... |