2012-01-15 38 views

回答

0
ImageXCenter = ImageXPos + Math.abs(ImageWidth/ImageXPos)/2; 
ImageYCenter = ImageYPos + Math.abs(ImageHeight/ImageYPos)/2; 
+0

我该如何获得ImageXPos? – adit 2012-01-15 19:31:55

+0

element.offsetLeft;或者element.offsetRight;然而Flo的解决方案是一个很好的解决方案,而且非常方便:) – Lucy 2012-01-15 19:33:45

+0

我喜欢你的解决方案,因为它很短 – adit 2012-01-16 04:37:59

0

这应该这样做:

小提琴:http://jsfiddle.net/9ex2V/

function getCenter (e) { 
    var left = e.offsetLeft, 
     top = e.offsetTop, 
     parent = e; 

    while(parent = parent.offsetParent) { 
     left += parent.offsetLeft; 
     top += parent.offsetTop; 
    } 


    return [ 
     left + Math.floor(e.offsetWidth/2), 
     top + Math.floor(e.offsetHeight/2) 
    ]; 
} 

希望我没有忽视对HTML /体/任何边境/保证金/填充任何内容。

相关问题