Animate buttons using gesture controls like whileTap and onDrag from Framer Motion

Kyle Gill
InstructorKyle Gill

Share this video with your friends

Send Tweet
Published 2 years ago
Updated 10 months ago

Learn how to create common button animations by applying gesture recognizers like whileTap, whileHover, and onDrag. Framer Motion offers flexibility in how animations are pieced together but offers sensible defaults for the transitions it applies without you having to mess with transition easing methods.

These props extend React's event listeners to apply powerful gesture detection for animations on components and can be strung together or used for more simple use cases.

Check out the official docs for more information on them.

Instructor: [00:00] In a motion component like with this button wrapped by a motion div, framer motion provides gesture recognizing event listeners to detect tapping, hovering, dragging and more. With this button, you can add a whileHover prop with the transition object to define what would be animated when hovered, like scaling the button up 1.15 times its normal size.

[00:21] The similarly functioning whileTap prop can provide shrinking the button when it is pressed. Adding a drag prop can make a component draggable within X bounce, within Y bounce or within both X and Y bounce. The dragConstraints prop can set a limit for draggable bounce and the onDrag prop returns data about the drag event.