/*RUTINAS REALIZADAS PARA LA RECOLOCACIÓN AUTOMÁTICA DE CAPAS EN FUNCIÓN DE LA RESOLUCIÓN DE LA PANTALLA
Utilizado principalmente para capas en movimiento
Necesarias:
Un objeto con un Id como referencia para la recolocación (debe estar en el código de forma que se recoloque con un cambio de tamaño del navegador)
El nombre de la capa a recolocar
Un número indicando la diferencia de la posición izquierda con respecto a la imagen de referencia
Un número indicando la diferencia de la posición superior con respecto a la imagen de referencia

Así, en la página html llamaremos a este conjunto de scripts y en el onload del body ejecutaremos una función de la siguiente manera
onload="recolocaCapa('idcapaarecolocar','idobjetoreferencia',10,20);"
Esto recolocará la capa 10 píxeles a la izquierda y 20 hacia abajo de la imagen de referencia
*/


function getParentObject( obj ) {
	var parent = null;
	if ( obj.offsetParent ) {parent = obj.offsetParent;}
	return( parent );
}

function findOffsetValue( obj, value ) {
	var offset = 0;
	var parent = getParentObject( obj );
	while ( parent ) {
		offset += ( parent[value] || 0 );
		parent = getParentObject( parent );
	}
	return( offset || 0 );
}

function Izquierda( img ) {
	img=document.getElementById(img);
	var left   = 0;
	var offset = findOffsetValue( img, "offsetLeft" );
	left = img.offsetLeft;
	return( left + offset );
}

function Arriba( img ) {
	img=document.getElementById(img);
    	var top    = 0;
	var offset = findOffsetValue( img, "offsetTop" );
	top = img.offsetTop;
	return( top + offset );
}

function recolocaCapa(capa,referencia,difIzq,difArr) {
	objCapa=document.getElementById(capa);
	objCapa.style.left=Izquierda(referencia)+parseInt(difIzq);
	objCapa.style.top=Arriba(referencia)+parseInt(difArr);
	window.setTimeout("recolocaCapa('"+capa+"','"+referencia+"',"+difIzq+","+difArr+")",2000);
}
