2012-01-16 63 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的示例。)后者有很多跨浏览器的突发事件。 – 2012-01-16 06:55:18

回答

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);