Altcademy - a Forbes magazine logo Best Coding Bootcamp 2023

What is jQuery in JavaScript?

In this blog post, we're going to discuss jQuery, which is a popular library for JavaScript. If you're new to programming or just starting to learn JavaScript, this post will help you understand what jQuery is, why it's so popular, and how to use it in your projects. We will be using simple language and examples, so don't worry if you come across any jargon - we'll be sure to explain it!

Introduction to jQuery

jQuery is a fast, lightweight, and feature-rich JavaScript library. It's designed to make it easier to work with HTML documents, handle events, create animations, and perform other common tasks on the web. In essence, jQuery simplifies the process of working with JavaScript and HTML, making it easier for developers to build dynamic, interactive websites.

Before we dive into what jQuery can do, let's discuss why it has become such a popular tool among web developers. There are several reasons for this:

Simplified syntax: jQuery's syntax is more concise and easier to understand than native JavaScript, making it more accessible for beginners and more efficient for experienced developers.

Cross-browser compatibility: Working with different web browsers can be a headache, as each browser has its quirks and may interpret code differently. jQuery handles these inconsistencies for you, making it much easier to write code that works across all major browsers.

Large community and extensive documentation: jQuery has been around since 2006, and over the years, it has built a large community of developers who contribute to its development, provide support, and create plugins to extend its functionality. Additionally, there is extensive documentation available, making it easy for developers to find the information they need.

Animations and effects: jQuery makes it simple to create animations and visual effects on web pages, which can greatly enhance the user experience.

Now that we have an understanding of why jQuery is so popular let's dive into some of its features and how to use them.

Getting Started with jQuery

To start using jQuery, you need to include the jQuery library in your HTML file. You can download the library from the official jQuery website and include it in your project or use a Content Delivery Network (CDN) to link to the library directly. We'll use the CDN method for this tutorial. Add the following line of code to your HTML file, inside the <head> tag:

<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>

This line of code imports the jQuery library, and now you're ready to use jQuery in your project!

Basic jQuery Syntax

The basic syntax for using jQuery is $(selector).action(), where $ is used to access the jQuery library, selector is used to find HTML elements, and action() is used to perform an action on the selected elements. Let's look at a simple example:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>jQuery Example</title>
    <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
    <script>
        $(document).ready(function(){
            $("button").click(function(){
                $("p").hide();
            });
        });
    </script>
</head>
<body>
    <button>Click me</button>
    <p>Hide me when the button is clicked!</p>
</body>
</html>

In this example, we have a button and a paragraph element. When the button is clicked, the paragraph element will be hidden. Let's break down the jQuery code:

$(document).ready(function() {...});: This line of code ensures that the jQuery code will only run after the entire HTML document has finished loading.

$("button").click(function() {...});: This line selects all button elements and attaches a click event listener. When a button is clicked, the function inside will be executed.

$("p").hide();: This line selects all p elements and hides them using the hide() action.

Now that we have a basic understanding of jQuery syntax let's explore some more features and examples.

Manipulating HTML Elements

jQuery makes it easy to manipulate HTML elements on a web page. Let's look at some examples:

Changing the text of an element

You can change the text of an element using the text() function. In the following example, when the button is clicked, the text of the paragraph will be changed:

$("button").click(function(){
    $("p").text("The text has been changed!");
});

Changing the HTML content of an element

You can change the HTML content of an element using the html() function. In the following example, when the button is clicked, the HTML content of the paragraph will be changed, including adding a new element:

$("button").click(function(){
    $("p").html("<strong>New</strong> text with an added element!");
});

Changing the value of an input element

You can change the value of an input element using the val() function. In the following example, when the button is clicked, the value of the input element will be changed:

$("button").click(function(){
    $("input").val("New value!");
});

Event Handling

jQuery makes it easy to handle events, such as clicks, mouse movements, and keyboard inputs. In our previous examples, we've already seen how to handle button clicks using the click() function. Now let's look at some more event handling examples:

Double-click event

You can handle double-click events using the dblclick() function. In the following example, when the button is double-clicked, the text of the paragraph will be changed:

$("button").dblclick(function(){
    $("p").text("The button was double-clicked!");
});

Mouse enter and mouse leave events

You can handle mouse enter and mouse leave events using the mouseenter() and mouseleave() functions, respectively. In the following example, when the mouse pointer enters the paragraph element, its background color will change to yellow, and when the pointer leaves the element, the background color will change back to white:

```javascript $("p").mouseenter(function(){ $(this).css("background-color", "yellow"); });

$("p").mouseleave