Episode 14 of 24
Adding and Removing Classes
Learn jQuery class manipulation methods — addClass, removeClass, toggleClass, and hasClass.
Manipulating CSS classes is the recommended way to change styles with jQuery — it keeps your CSS in stylesheets and your logic in JavaScript.
addClass()
$(".box").addClass("active");
$("p").addClass("highlight large"); // Add multiple classes
removeClass()
$(".box").removeClass("active");
$("p").removeClass("highlight large"); // Remove multiple
$("p").removeClass(); // Remove ALL classes
toggleClass()
Add the class if it's missing, remove it if it's present:
$(".box").toggleClass("active");
// Toggle on click
$(".accordion-header").click(function() {
$(this).toggleClass("open");
});
hasClass()
Check if an element has a specific class (returns boolean):
if ($(".box").hasClass("active")) {
console.log("Box is active!");
}
$("li").click(function() {
if (!$(this).hasClass("disabled")) {
$(this).toggleClass("selected");
}
});
Practical Examples
// Navigation active state
$("nav a").click(function(e) {
e.preventDefault();
$("nav a").removeClass("active");
$(this).addClass("active");
});
// Form validation visual feedback
$("input").on("blur", function() {
if ($(this).val().trim() === "") {
$(this).addClass("error").removeClass("valid");
} else {
$(this).addClass("valid").removeClass("error");
}
});
// Dark mode toggle
$("#darkToggle").click(function() {
$("body").toggleClass("dark-mode");
$(this).text(
$("body").hasClass("dark-mode") ? "Light Mode" : "Dark Mode"
);
});