RivoCode

JavaScript Fundamentals · DOM · Lesson 25 of 48

Handling Events

Concept

Handling Events

addEventListener lets your code react when a user clicks, types, or otherwise interacts with the page.

You can attach multiple listeners to the same element and the same event without them overwriting each other, unlike setting element.onclick directly.

By the end of this lesson
  • Explain the core idea behind Handling Events.
  • Predict output before running a change.
  • Test one realistic and one unusual input.
  • Use the result to make the next decision.
How to study this page
  1. 1. Read one concept.
  2. 2. Change the example.
  3. 3. Run, compare, and explain.
  4. 4. Complete the challenge below.
Syntax
element.addEventListener("eventType", callbackFunction);
ExampleRunnable
const button = document.querySelector("button");
button.addEventListener("click", () => {
  console.log("Button clicked!");
});
Try it Yourself »
Reading input as the user types
const input = document.querySelector("input");
input.addEventListener("input", (e) => {
  console.log(e.target.value);
});
Note: The event object passed to the callback (often named e) carries details about what happened, including e.target — the element the event fired on.
Self-check before continuing

Without looking at the example, describe what changes when you modify one input in Handling Events. Then reopen the editor and prove your explanation with a small test.

You are ready to continue when you can predict, test, and explain the result.

Your turn

Write an event listener that logs a message when a button with id "submit" is clicked.

Loading editor…

Console

Output will appear here...