jQuery Hide & Show

In the realm of web development, creating dynamic and interactive user interfaces is essential for engaging user experiences. jQuery, a widely-used JavaScript library, offers powerful methods to manipulate the visibility of HTML elements. Two fundamental methods for achieving this are hide() and show().

Purpose of the hide() and show() Methods

The hide() and show() methods in jQuery serve the primary purpose of toggling the visibility of HTML elements on a web page. These methods are invaluable for creating interactive user interfaces, managing content visibility, and enhancing the user experience by providing smooth and responsive transitions.


  • hide(): Conceals selected elements by setting their CSS display property to “none.” This effectively removes the element from the visible layout of the page.

  • show(): Reveals hidden elements by setting their CSS display property to its default value, typically “block” or “inline,” making the element visible.

Both methods can be used to toggle the visibility of elements, which is particularly useful for creating features like collapsible sections, modal dialogs, tooltips, and more.


Basic Usage of hide() and show()

Hiding Elements with hide()

The basic syntax for using the hide() method is straightforward. You select an element and call the hide() method on it. Here’s a simple example:


In this example, #my-element will be hidden from view, and its display property will be set to “none.”


Revealing Hidden Elements with show()

The show() method, on the other hand, is used to reveal hidden elements. It’s similarly easy to use:



This code will make #my-element visible again, using its default display property value.


Customizing hide() and show() Animations

While hide() and show() are primarily used for instantly toggling visibility, jQuery allows you to customize these actions by adding animations. You can control the duration of the animations, specify easing functions, and include callback functions that execute after the animations complete.


Animation Duration

You can specify the duration of the hide or show animation by passing a value in milliseconds as an argument. For example, to make the hide animation last for 500 milliseconds:



This code will gradually hide #my-element over half a second.



Easing functions control the acceleration and deceleration of animations. jQuery provides various easing options to achieve different effects. The default easing used by hide() and show() is “swing,” which includes slight acceleration and deceleration. However, you can use “linear” for a constant speed or define custom easing functions for precise control:


$("#my-element").hide(500, "easeOutBounce"); // Custom easing function

Callback Function

You can specify a callback function to run after the hide or show animation completes. This callback function is useful for executing additional actions or updating the UI once the animation is finished:

$("#my-element").hide(500, function() {
// Animation is complete, do something here

For example, you can use the callback to remove the element from the DOM, trigger other animations, or update content dynamically.


Hiding and Showing Multiple Elements

The hide() and show() methods can be applied to multiple elements simultaneously by selecting multiple elements using common classes or other selectors. When used on a collection of elements, the methods are applied to each element individually.


$(".hide-me").hide(500); // Hide all elements with class .hide-me

This is particularly useful when you want to toggle the visibility of multiple elements in the same manner, such as when creating collapsible sections or handling a list of items.


Toggling Elements with toggle()

jQuery also provides the toggle() method, which serves as a toggle switch for elements. It alternates between hiding and showing elements based on their current state. If the element is visible, toggle() hides it; if it’s hidden, toggle() shows it:



This code snippet will toggle the visibility of #my-element each time it’s called.


Creating Collapsible Sections

One common use case for hide() and show() is creating collapsible sections, often seen in FAQs, navigation menus, or content panels. By hiding content initially and revealing it when triggered, you can save space and enhance the user experience.

Here’s an example of creating a simple FAQ section with jQuery:


<!DOCTYPE html>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
$(document).ready(function() {
$(".faq-item").click(function() {
.faq-answer {
display: none;
<div class="faq-item">Question 1</div>
<div class="faq-answer">Answer 1</div>
<div class="faq-item">Question 2</div>
<div class="faq-answer">Answer 2</div>
<!-- More questions and answers... -->

In this example, when a .faq-item is clicked, the associated .faq-answer is revealed or hidden with a slide animation.


The hide() and show() methods in jQuery are versatile tools for managing the visibility of HTML elements and creating interactive user interfaces. Whether you’re building collapsible sections, modal dialogs, tooltips, or enhancing the overall user experience, these methods provide a seamless and customizable way to toggle element visibility. By understanding their basic usage, customization options, and potential combinations with animations and other effects, you can leverage hide() and show() to create dynamic and engaging web pages that captivate and delight your audience.

Build something ULTIMATE!

About Us

Learn about HTML, CSS, SASS, Javascript, jQuery, PHP, SQL, WordPress. From basics to tips and tricks.

Connect With us

© 2023 Ultimate WebDev

This website uses cookies to improve your experience. By browsing this website, you agree to our cookies. Accept Read More