source

jQuery를 사용하여 요소의 절대 위치를 찾으려면 어떻게 해야 합니까?

itover 2022. 12. 21. 22:30
반응형

jQuery를 사용하여 요소의 절대 위치를 찾으려면 어떻게 해야 합니까?

jQuery를 사용하여 요소의 절대 위치(예: 창 시작과 관련된 위치)를 찾는 방법이 있습니까?

.offset() 요소의 오프셋 위치를 단순 개체로 반환합니다. 예:

var position = $(element).offset(); // position = { left: 42, top: 567 }

이 반환값을 사용하여 다른 요소를 동일한 위치에 배치할 수 있습니다.

$(anotherElement).css(position)

주의:$(element).offset()에 문서와 관련된 요소의 위치를 나타냅니다.이것은 대부분의 경우 매우 효과적이지만, 이 경우 예상치 못한 결과를 얻을 수 있습니다.

문서가 뷰포트보다 길고 문서 하단을 향해 수직으로 스크롤한 경우position:fixed요소offset()스크롤한 양만큼 값이 예상 값보다 커집니다.

고정된 요소의 문서가 아닌 뷰포트(창)에 상대적인 값을 찾는 경우 문서의 값을 뺄 수 있습니다.scrollTop()고정 요소의 값offset().top값. 예:$("#el").offset().top - $(document).scrollTop()

이 경우,position:fixed요소의 오프셋 상위 항목이 문서입니다. 읽을 문서입니다.parseInt($.css('top'))대신.

요소가 보이지 않는 경우$(element).offset();그리고.$(element).position();재실행0쌍방에게top그리고.left실제 가치보다 더 가치 있는 요소입니다.

나는 사용해야만 했다

parseInt($(element).css("top"))
parseInt($(element).css("left"))

필요한 정보를 반환합니다.원소에는position: absolute;.

언급URL : https://stackoverflow.com/questions/683339/how-do-i-find-the-absolute-position-of-an-element-using-jquery

반응형