2009-11-19 3 views

답변

1

을 :

document.getElementById('yourElement').offsetLeft 
document.getElementById('yourElement').offsetTop 

을하지만 당신은 아마 몇 오프셋을 추가해야 할 것 부모 요소는 position에 적용됩니다.

+0

완벽하게 일했습니다. 감사합니다 :) –

+0

그것은 모든 경우에 정확한 결과를주지 않을 부모 컨테이너에 상대적인 좌표입니다. – Rob

+0

부모 컨테이너의 좌표를 알았습니다. 이것은 정확하게 필요한 것입니다 :) –

1

실제로 그렇습니다. 안타깝게도 브라우저 불일치와 원시 DOM 액세스의 일반적인 추악 함 때문에 정보를 안정적으로 가져 오는 것은 꽤 어렵습니다. 문서의 왼쪽 상단에서 당신에게 사업부의 y 위치를 줄 것이다

$('#some_div').offset().top 

:

나는 당신과 같은 코드가있을 수 있습니다 jQuery을 제안한다.

+0

불행히도 기존 시스템을 연구 중이며 빠른 수정이 필요합니다. 시스템에는 JQuery 파일이 포함되어 있지 않습니다. 좋은 점은 파이어 폭스에서 작동하는 시스템 만 있으면된다는 것입니다. –

1

아니요, 그러나 mootools (아마도 jquery)를 사용하면 $(element).getLeft() 또는 $(element).getTop()이라고 말할 수 있습니다.

또는 당신은 다음과 같이 사용할 수 있습니다 : 당신이 그런 식으로 작업을 수행 할 수 있습니다 자바 스크립트 '기본'에서

function getLeft(obj) { 
    return (obj.offsetParent==null ? obj.offsetLeft : obj.offsetLeft + getLeft(obj.offsetParent)); 
} 

function getTop(obj) { 
    return (obj.offsetParent==null ? obj.offsetTop : obj.offsetTop + getTop(obj.offsetParent)); 
} 
관련 문제