38 of 119 menu

offset 메서드

offset 메서드는 요소의 위치를 문서를 기준으로 가져올 수 있습니다. 이 메서드는 부모의 여백을 기준으로 좌표를 가져오는 position 메서드와 달리, offset 메서드는 문서를 기준으로 좌표를 계산합니다. offset 메서드는 기존 요소 위에 새 요소를 배치하거나 전역 조작(예: drag-and-drop 구현)에 더 유용합니다. 이 메서드는 topleft 속성을 포함하는 객체를 반환합니다. 사용자가 페이지 크기를 조정하면 계산 오류가 발생할 수 있습니다. 또한 이 메서드는 숨겨진 요소의 좌표를 가져올 수 없습니다.

구문

현재 좌표 가져오기. 특정 경우 가져온 값이 소수일 수 있습니다:

$(selector).offset();

요소의 좌표를 변경하려면 topleft 속성을 포함하는 객체를 전달해야 합니다:

$(selector).offset({top: 40, left: 40});

또한 주어진 함수를 집합의 각 요소에 적용할 수 있습니다. 이 경우 함수는 첫 번째 매개변수로 집합 내 요소의 번호를, 두 번째 매개변수로 topleft 좌표를 가진 객체를 받습니다. 함수 내부의 this는 현재 요소를 가리킵니다. 요소의 좌표 값은 함수가 반환하는 값으로 변경됩니다:

$(selector).width(function(index in set, {current coordinates}));

예제

offset 메서드를 사용하여 div(녹색 사각형)의 위치를 가져온 다음, 얻은 객체의 키에 접근하여 해당 정보를 출력해 봅시다:

<div id="result">사각형을 클릭하세요 ...</div> <div id="test"></div> #test { position: absolute; top: 40px; left: 40px; width: 100px; height: 100px; background: green; color: white; margin-top: 10px; cursor: pointer; } $('*', document.body).click(function(event) { let offset = $(this).offset(); event.stopPropagation(); $('#result').text('Left: ' + offset.left + ', Top: ' + offset.top); });

예제

두 번째 단락의 좌표를 변경해 봅시다:

<p style="margin-left: 10px;">텍스트1</p> <p style="margin-left: 10px;">텍스트2</p> $('p').last().offset({top: 40, left: 60});

참고 항목

  • position 메서드,
    요소의 현재 좌표를 가져올 수 있습니다.
  • offsetParent 메서드,
    요소의 가장 가까운 위치 지정된 상위 요소를 가져올 수 있습니다.
  • css 메서드,
    요소의 CSS 스타일을 가져오고 변경할 수 있습니다.
한국어
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақКыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
우리는 웹사이트 운영, 분석 및 개인화를 위해 쿠키를 사용합니다. 데이터 처리는 개인정보 처리방침에 따라 이루어집니다.
모두 수락 설정 거부