﻿/*==========================================================================================
	Author:				Sandheart
	E-Mail:				sxd.www@gmail.com
	Create date:		2008-2-22
	Description:		Move object module
	Operation method:	给要移动的对象添加属性:style="position:absolute;"
	                    在要移动前点击的对象标签里加入事件:onmousedown="MoveLayer.startMove(event,'要移动的对象ID')"
	                    （只做了IE）
==========================================================================================*/
//-------只兼容IE,Firefox-------
var MoveLayer = {};

MoveLayer.moveObj = null;
MoveLayer.x = 0;
MoveLayer.y = 0;
MoveLayer.oldw = 0;   //水平位置滚动条的原始宽度
MoveLayer.oldh = 0;   //水平位置滚动条的原始高
MoveLayer.move = function(evt)
{
	if(!MoveLayer.moveObj) return;
	var nX = evt.clientX - MoveLayer.x;
	var nY = evt.clientY - MoveLayer.y;
	//边距自己适应
//	if(MoveLayer.getScroll()['h'] > MoveLayer.oldh)
//	    MoveLayer.moveObj.style.top = MoveLayer.moveObj.style.top.replace('px','') - (MoveLayer.getScroll()['h'] - MoveLayer.oldh) + "px";
//	else
//	    MoveLayer.moveObj.style.top = nY + "px";	
//	if(MoveLayer.getScroll()['w'] > MoveLayer.oldw)
//	    MoveLayer.moveObj.style.left = (MoveLayer.moveObj.style.left.replace('px','') - (MoveLayer.getScroll()['w'] - MoveLayer.oldw)) + "px";
//	else
//	    MoveLayer.moveObj.style.left = nX + "px";
        //未使用边边距自己适应
	    MoveLayer.moveObj.style.top = nY + "px";	
	    MoveLayer.moveObj.style.left = nX + "px";
}

MoveLayer.startMove = function(evt,id)
{
    MoveLayer.getScroll();
	MoveLayer.moveObj = document.getElementById(id);
	if(!MoveLayer.moveObj) return;
	if(typeof(window.event) == 'object') //ie
	{
		MoveLayer.x = document.documentElement.scrollLeft + evt.offsetX;
		MoveLayer.y = document.documentElement.scrollTop + evt.offsetY;
		if(document.documentElement.scrollTop > 0) MoveLayer.y = evt.offsetY - document.documentElement.scrollTop;
		if (document.documentElement.scrollLeft > 0) MoveLayer.x = evt.offsetX - document.documentElement.scrollLeft;
	}
	else //ff
	{
		MoveLayer.x = document.documentElement.scrollLeft + evt.layerX;
		MoveLayer.y = document.documentElement.scrollTop + evt.layerY;
		if(document.documentElement.scrollTop > 0) MoveLayer.y = evt.layerY - document.documentElement.scrollTop;
		if (document.documentElement.scrollLeft > 0) MoveLayer.x = evt.layerX - document.documentElement.scrollLeft;
	}
}

MoveLayer.getScroll = function()
{     
    var w = 0;
    var h = 0;
    if (document.documentElement && document.documentElement.scrollTop)
    {           
        w = document.documentElement.scrollWidth;         
        h = document.documentElement.scrollHeight;         
    }
    else if (document.body)
    {         
        w = document.documentElement.scrollWidth;         
        h = document.documentElement.scrollHeight;         
    }
    if(MoveLayer.oldw == 0) MoveLayer.oldw = w; 
    if(MoveLayer.oldh == 0) MoveLayer.oldh = h; 
    return {w:w,h:h}; 
}  

//放到了function.js文件
//document.onmousemove = function(){
//   MoveLayer.move(event);
//}

//document.onmouseup = function(){
//    MoveLayer.moveObj = null;
//}

