• 회원가입
  • 로그인
  • 구글아이디로 로그인

[HTML_CSS] JQ - offset() 메서드 ★ - 오프셋 (=xy좌표) 설정/반환. (= offset메서드 = 오프셋메서드)

목차

  1. offset() 예제 - 오프셋 반환
  2. offset() 정의
  3. offset() 구문
  4. offset() 예제 - 이름:값 쌍으로 오프셋 설정
  5. offset() 예제 - 객체로 오프셋 설정
  6. offset() 예제 - 함수로 오프셋 설정
  7. offset() 예제 - 다른 요소의 오프셋으로 오프셋 설정
  8. offset() 예제 - 특정 offset 지점으로 이동

 

offset() 예제 - 오프셋 반환

 

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>

<script>

$(document).ready(function(){

  $("button").click(function(){

    var hz = $("p").offset();

    alert("Top: " + hz.top + " Left: " + hz.left);

  });

});

</script>

</head>

<body>


<p>홈짱닷컴 Homzzang.com</p>

<button>p 요소 오프셋좌표 보기 (클릭)</button>

 

결과보기

 

offset() 정의

 

웹문서 기준으로 선택요소의 오프셋 설정하거나 반환
※ 오프셋  : 웹문서 좌측상단 구석부터 잰 top, left 좌표 

 


 

1. 오프셋 반환 경우:

  • 처음 매칭 (≒ 일치)하는 요소의 오프셋 반환.
  • 해당 좌표는 px 단위로 표현된 top, left 좌표 속성 갖는 객체임. 

 

2. 오프셋 설정 경우:

  • 모든 매칭 (≒ 일치)하는 요소의 오프셋 반환.

 

 

offset() 구문

 

오프셋 반환

$(selector).offset()

 

오프셋 설정

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

 

함수로 오프셋 설정

$(selector).offset(function(index,currentoffset))

 


[매개변수]


{top : value, left : value}

오프셋 설정 시 필요.
※ 위쪽/왼쪽 좌표를 픽셀 단위로 지정. (가능값 2종류) 

  • {top : 100, left : 100}과 같은 이름:값 구문. (예제1)
  •  top 및 left 속성 갖은 객체 (예제2)

 

function (index, currentoffset)

선택. top 및 left 좌표 포함 객체 반환 함수 지정. (예제3)

  • index - 세트 안 요소의 인덱스 위치 반환.
  • currentoffset - 선택요소의 현재 좌표 반환.

 

 

offset() 예제 - 이름:값 쌍으로 오프셋 설정

 

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>

<script>

$(document).ready(function(){

  $("button").click(function(){

    $("p").offset({top: 200, left: 200});

  });

});

</script>


<p>홈짱닷컴 Homzzang.com</p>

<button>요소 오프셋 재설정 (클릭)</button>

 

결과보기 

 

offset() 예제 - 객체로 오프셋 설정

 

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>

<script>

$(document).ready(function(){

  $("button").click(function(){

    hz = new Object();

    hz.left = "0";

    hz.top = "100";

    $("p").offset(hz);

  });

});

</script>


<p>홈짱닷컴 Homzzang.com</p>

<button>객체 사용해 요소의 오프셋 재설정 (클릭)</button>

 

결과보기

 

offset() 예제 - 함수로 오프셋 설정

 

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>

<script>

$(document).ready(function(){

  $("button").click(function(){

    $("p").offset(function(n, c){

      hz = new Object();

      hz.left = c.left + 100;

      hz.top = c.top + 100;

      return hz;

    });

  });

});

</script>


<p>홈짱닷컴 Homzzang.com</p>

<button>요소 오프셋좌표 재설정 (클릭)</button>

 

결과보기

 

offset() 예제 - 다른 요소의 오프셋으로 오프셋 설정

 

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>

<script>

$(document).ready(function(){

  $("button").click(function(){

    $("p").offset($("span").offset());

  });

});

</script>


<p>홈짱닷컴 Homzzang.com</p>

<button>span 요소와 동일하게 p 요소 오프셋 설정 (클릭)</button>


<span style="position:absolute;left:100px;top:150px;">span 요소 위치</span>

 

결과보기

 

offset() 예제 - 특정 offset 지점으로 이동

 

$( document ).ready(function() {

  var offset = $("#hz").offset();

  $('html, body').animate({scrollTop : offset.top}, 400);

});

 

qoqofh 님 (201006) https://sir.kr/qa/381501


방문 감사합니다. (즐겨찾기 등록: Ctrl + D)

분류 제목
AJAX JQ - $.getScript() 메서드 ★ - AJAX HTTP GET 요청을 사용하여 서버에서 JS 가져…
AJAX JQ - $.param() 메서드 - 배열/객체의 직렬화 된 표현 생성 (※ AJAX 요청에 대한 URL 쿼…
AJAX JQ - $.post() 메서드 ★ - AJAX HTTP POST 요청을 사용하여 서버에서 데이터를 로드 (…
AJAX JQ - ajaxComplete() 메서드 - AJAX 요청 완료 시, 실행할 함수 지정 (= ajaxCom…
AJAX JQ - ajaxError() 메서드 - AJAX 요청 실패 시 실행할 함수 지정 (= ajaxError메서…
AJAX JQ - ajaxSend() 메서드 - AJAX 요청을 보내기 전에 실행할 함수 지정 (= ajaxSend메…
AJAX JQ - ajaxStart() 메서드 - 첫 번째 AJAX 요청이 시작될 때 실행할 함수 지정 (= ajax…
AJAX JQ - ajaxStop() 메서드 - 모든 AJAX 요청이 완료되었을 때 실행할 함수 지정 (= ajaxS…
AJAX JQ - ajaxSuccess() 메서드 - AJAX 요청이 성공적으로 완료될 때 실행할 함수 지정 (= a…
AJAX JQ - load() 메서드 - 서버에서 데이터를 로드하고 반환된 데이터를 선택요소에 저장 (= load메서…
AJAX JQ - serialize() 메서드 ★ = 전송 위해 폼 요소 집합을 직렬화 (= serialize메서드 …
AJAX JQ - serializeArray() 메서드 - 일련의 폼 요소를 이름과 값의 배열로 인코딩 (= seri…
Misc JQ - data() 메서드 ★★ - 선택요소에 데이터 첨부. / 선택요소의 데이터 반환. (= data메…
Misc JQ - get() 메서드 ★ - 선택자가 가리키는 DOM 요소 가져오기. (= get메서드 = 겟메서드)
Misc JQ - index() 메서드 ★★★ - 요소 색인번호 반환 (= 일치하는 요소 중에서 지정요소 검색 = i…
Misc JQ - $.noConflict() 메서드 - $ 변수에 대한 jQuery의 제어를 해제
Misc JQ - $.param() 메서드 - 배열/객체의 직렬화 된 표현 반환 (※ AJAX 요청에 대한 URL 쿼…
Misc JQ - removeData() 메서드 - 이전 저장데이터 제거
Misc JQ - size() 메서드 - 요소개수 (= size메서드 = 사이즈 메서드) ※ JQ3.0 폐기완료. 대…
Misc JQ - toArray() 메서드 ★ - 일치요소 배열반환 (= 선택자와 일치하는 모든 요소를 배열로 가져오…
13/15
목록
찾아주셔서 감사합니다. Since 2012