Para hacer eso primero debes calcular la posición que ocupa la imagen para restarsela a las coordenadas de la página.
Se utilizan las siguientes propiedades de los objetos:
offsetLeft - distancia horizontal del objeto respecto al contenedor (padre).
offsetTop - distancia vertical del objeto respecto al contenedor (padre).
parent - apunta al objeto contenedor o padre
Constiste en calcular las distancias de los objetos a su superior en la jerarquía hasta llegar al BODY o HTML.
Las siguientes funciones calculan las distancia de un objeto respecto de los bordes de la página.
function distancia_izq(objeto)
{
// calula la distancia de un objeto con el lado izquierdo del navegador
dis_izq = objeto.offsetLeft;
objeto = objeto.offsetParent;
while (objeto.tagName != 'BODY' && objeto.tagName != 'HTML')
{
dis_izq += objeto.offsetLeft;
objeto = objeto.offsetParent;
}
dis_izq += objeto.offsetLeft;
return dis_izq;
}
function distancia_sup(objeto)
{
// calcula la distancia de un objeto con el lado superior del navegador
dis_sup = objeto.offsetTop;
objeto = objeto.offsetParent;
while (objeto.tagName != 'BODY' && objeto.tagName != 'HTML')
{
dis_sup += objeto.offsetTop;
objeto = objeto.offsetParent;
}
dis_sup += objeto.offsetTop;
return dis_sup;
}