How to animate div width and height on mouse hover using jQuery ?

In order to animate the div width and height on mouse hover, we can use the jQuery animate() method along with the mouseenter() and mouseleave() methods.
- .animate() method: The animate() method changes the state of the element with CSS style.
Syntax:$(selector).animate({styles}, para1, para2, para3); - .mouseenter() method: The mouseenter() method works when mouse pointer moves over the selected element.
Syntax:$(selector).mouseenter(function)
- .mouseleave() method: The mouseleave() method works when the mouse pointer leaves the selected element.
Syntax:$(selector).mouseleave(function)
Approach:
- Store the actual width and height of the div element on which animation is to be done using $(selector).width() method.
- When the mouse pointer event is handle the .mouseenter() and .mouseleave() methods.
- When mouse pointer is over the div element, change the width or height style property to new value of div element using .animate() method.
- Change the width or height style property of div element to previously stored values.
Example 1: Animating the div width on hover using jQuery.
<!DOCTYPE html> <html>   <head>     <title>         How to animate div width and height         on mouse hover in jQuery ?     </title>           <script src=     </script>       <style type="text/css">         .box {             float:center;             overflow: hidden;             background: #32a852;             width: 400px;             padding: 0px;         }                   /* Add padding and border to inner         content for better animation effect */         .box-inner {             width: 400px;             padding: 0px;             border: 1px solid #000000;         }     </style> </head>   <body>     <center>         <h1 style = "color:green;" >             GeeksForGeeks         </h1>                   <h3>             jQuery | How to animate div             width on mouse hover?         </h3>         <hr>                   <div class="box">             <div class="box-inner">                 <h4>.animate() method is used</h4>                                   <p>                     GEEKSFORGEEKS - A computer                     science portal for zambiatek.                 </p>             </div>         </div>         <hr>                   <script type="text/javascript">             $(document).ready(function() {                 var divWidth = $(".box").width();                                   $(".box").mouseenter(function(){                     $(this).animate({                         width: "300"                     });                 }).mouseleave(function(){                     $(this).animate({                         width: divWidth                     });                 });             });         </script>     </center> </body>   </html> |
Output:
- When pointer is on the div element:
- When pointer is not on the div element:
Example 2: Animating the div height on Hover using jQuery.
<!DOCTYPE html> <html>   <head>     <title>         jQuery | How to animate div width         and height on mouse hover?     </title>           <script src=     </script>           <style type="text/css">         .box{             float:center;             overflow: hidden;             background: #32a852;             width: 400px;             padding: 0px;         }           /* Add padding and border to inner         content for better animation effect */         .box-inner{             width: 400px;             padding: 0px;             border: 1px solid #000000;         }     </style> </head>   <body>     <center>         <h1 style = "color:green;" >             GeeksForGeeks         </h1>                   <h3>             jQuery | How to animate div             height on mouse hover?         </h3>         <hr>                   <div class="box">             <div class="box-inner">                 <h4>.animate() method is used</h4>                                   <p>                     GEEKSFORGEEKS - A computer                     science portal for zambiatek.                 </p>             </div>         </div><hr>                   <script type="text/javascript">             $(document).ready(function(){                 var divHeight = $(".box").height();                 $(".box").mouseenter(function(){                     $(this).animate({                         height: "250"                     });                 }).mouseleave(function(){                     $(this).animate({                         height: divHeight                     });                 });             });         </script>     </center> </body>   </html> |
Output:
- When pointer is on the div element:
- When pointer is not on the div element:
Whether you’re preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape, zambiatek Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we’ve already empowered, and we’re here to do the same for you. Don’t miss out – check it out now!




