애니메이션 효과 만드는 방법 - .animate()

animate는 애니메이션 효과를 만듭니다. 애니메이션 효과를 줄 속성을 정합니다.
3 min read

.animate

.animate()는 애니메이션 효과를 만듭니다.

 

기본형

.animate( properties [, duration ] [, easing ] [, complete ] )

 

properties

애니메이션 효과를 줄 속성을 정합니다. 가능한 속성은 다음과 같습니다.

  • backgroundPositionX
  • backgroundPositionY
  • borderBottomWidth
  • borderLeftWidth
  • borderRightWidth
  • borderSpacing
  • borderTopWidth
  • borderWidth
  • bottom
  • fontSize
  • height
  • left
  • letterSpacing
  • lineHeight
  • margin
  • marginBottom
  • marginLeft
  • marginRight
  • marginTop
  • maxHeight
  • maxWidth
  • minHeight
  • minWidth
  • opacity
  • outlineWidth
  • padding
  • paddingBottom
  • paddingLeft
  • paddingRight
  • paddingTop
  • right
  • textIndent
  • top
  • width
  • wordSpacing

 

duration

  • 애니메이션 효과를 완료할 때까지 걸리는 시간입니다.
  • 단위는 1/1000초, 기본값은 400입니다.
  • fast나 slow로 정할 수 있습니다.
  • fast는 200, slow는 600에 해당합니다.

 

easing

  • 애니메이션 효과의 방식을 정합니다.
  • swing과 linear이 가능하며, 기본값은 swing입니다.

 

complete

  • 요소가 사라진 후 수행할 작업을 정합니다.

 

예제 1

버튼을 클릭하면 파란색 div 요소의 가로 크기가 변합니다.

<p><button>Click</button></p>
<div id="a"></div>
#a {
  width: 10%;
  height: 100px;
  background-color: #bbdefb;
}
$( document ).ready( function() {
  $( 'button' ).click( function() {
    $( '#a' ).animate( {
      width: '100%'
    });
  });
});

 

예제 2

swing과 linear를 비교한 예제입니다. linear는 일정한 속도로 진행합니다.

<p><button>Click</button></p>
<div id="a"></div>
<div id="b"></div>
div {
  margin: 10px 0px;
  width: 10%;
  height: 100px;
  background-color: #e3f2fd;
}
#a {
  background-color: #bbdefb;
}
#b {
  background-color: #ffcdd2;
}
$( document ).ready( function() {
  $( 'button' ).click( function() {
    $( '#a' ).animate( {
      width: '100%'
    }, 2000, 'swing' );
    $( '#b' ).animate( {
      width: '100%'
    }, 2000, 'linear' );
  });
});

 

예제 3

div 요소가 커지는 애니메이션을 마친 후, 사라지는 애니메이션을 실행합니다.

<p><button>Click!</button></p>
<div id="a"></div>
#a {
  width: 10%;
  height: 100px;
  background-color: #bbdefb;
}
$( document ).ready( function() {
  $( 'button' ).click( function() {
    $( '#a' ).animate( {
      width: '100%'
    }, 1000, function() {
      $( this ).animate( {
        width: '0%'
      }, 1000 );
    });
  });
});

You may like these posts

  • .length .length는 선택한 요소의 개수를 반환하는 속성입니다. 예를 들어 $( 'div' ).length 는 div 요소의 개수입니다.   예제 버튼을 클릭하면 li 요소의 개수를 출력합니다. <button>Cli…
  • scrollTop() 맨 위로 스크롤 이동하는 방법 jQuery의 scrollTop()을 이용하면 맨 위로 부드럽게 올라가는 효과를 쉽게 만들 수 있습니다. 밑으로 내려가면 웹브라우저 아래 중간에 Top이라는 링크가 생기고,그 링크를 클릭하면 맨 위로 천천히 올라갑니다. …
  • CDN 이용하기 HTML에 다음 코드를 추가합니다. <script src='//cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js'></script>   다운로드 받아 연결하기 jQuery 다운로드는…
  • 순서대로 요소를 나타내는 방법 .animate()를 이용하여 서서히 나타나게 만든 예제입니다. <button>Click to animate</button> <div class="box box-1">Hello!<…
  • 체크박스 모두 선택, 모두 선택 해제 하는 방법 다음은 체크박스를 모두 선택하고 해제하는 간단한 예제입니다. <p><input type="checkbox" name="all" class="check-all"> <label>Chec…
  • HTML 태그 바꾸는 방법 예를 들어 <h2>를 <p>로 바꾸고 싶다면 다음과 같이 합니다. $( 'h2' ).contents().unwrap().wrap( '<p></p>' ); <h2> 요소를 선택하고 내용으로 들어간 후 &l…

Post a Comment