2012-01-16 3 views
1

У меня есть изображение, которое инкапсулировано в <a href=""><img src=""/></a>. Может быть один или несколько div выше/ниже этого изображения. Как найти верхнюю левую позицию этого изображения? в левом верхнем углу я имею в виду координату x и y этого изображения. И я хочу использовать только javascript, нет jQuery и только самое простое решение (с наименьшим количеством строк). Я имею в виду следующее:найти верхний левый угол позиции изображения

topleftImgX = img.offsetTop - img.parentNode.scrollTop; 
topleftImgY = img.offsetLeft = img.parentNode.scrollLeft; 

Это правильно? Снова Javascript только не JQuery

+0

Вы только хотите, чтобы получить позицию на клик или в любое время? Первое легко. (См. Пример amka.) В последнем случае много кросс-браузерных непредвиденных обстоятельств. –

ответ

1

Самый простой способ я знаю:

elem = document.getElementById("yourElement");//outer starts at your elem then walks out 
var innerYValue = 0; 
var innerXValue = 0; 

while(elem != null) { 
    innerYValue += elem.offsetTop; 
    innerXValue += elem.offsetLeft; 
    elem = elem.offsetParent; 
} 

alert("x: "+innerXValue +"\ny: "+innerYValue); 
Смежные вопросы