var mouseOffset = null;
var mousePos;
function getXY(id,e){
	var ev=e||window.event;
	var xx=0;
	var yy=0;
	mousePos = mouseCoords(ev);
    if(document.getElementById(id)){
        var o = document.getElementById(id);
	    mousePos = mouseCoords(ev);
        mouseOffset = getMouseOffset(o, ev);
        xx=mousePos.x - mouseOffset.x;
        yy=mousePos.y - mouseOffset.y;
    }
    return {x:xx, y:yy};
}
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};
}
function getPosition(e){
	var left = 0;
	var top  = 0;	
	while (e.offsetParent){
		left += e.offsetLeft;
		top  += e.offsetTop;
		e = e.offsetParent;
	}	
	left += e.offsetLeft;
	top  += e.offsetTop;	
	return {x:left, y:top};
}
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
    };
}