Skip to main content

Most Important JavaScript Events You Must Know

Top JavaScript Events You Must Know

JavaScript is event-driven, meaning a lot of its power lies in responding to user interactions and browser behavior. Whether you’re building a simple webpage or a complex web app, understanding **JavaScript events** is crucial.

🔑 What Are JavaScript Events?

Events are signals that something has happened — like a button click, a key press, a form submission, or even a mouse hover. You can attach listeners to these events to execute JavaScript code.

📋 Commonly Used JavaScript Events

  • click – User clicks an element
  • submit – Form submission
  • keydown, keyup – Key press events
  • change – Value change (e.g. dropdowns, inputs)
  • mouseover, mouseout – Mouse hovers over or leaves an element
  • load – Page or resource finishes loading
  • DOMContentLoaded – DOM fully loaded without waiting for styles/images
  • resize – Browser window is resized
  • scroll – Scroll action happens

📌 Examples

1. click Event


document.getElementById("myBtn").addEventListener("click", function() {
  alert("Button clicked!");
});
  

2. submit Event


document.querySelector("form").addEventListener("submit", function(e) {
  e.preventDefault(); // Prevent page reload
  console.log("Form submitted!");
});
  

3. keydown Event


document.addEventListener("keydown", function(e) {
  console.log("Key pressed:", e.key);
});
  

4. DOMContentLoaded Event


document.addEventListener("DOMContentLoaded", function() {
  console.log("DOM is ready!");
});
  

5. scroll Event


window.addEventListener("scroll", function() {
  console.log("User is scrolling!");
});
  

🧠 Event Delegation

Instead of attaching event listeners to each item, you can attach one listener to a parent element and catch events via bubbling:


document.getElementById("list").addEventListener("click", function(e) {
  if (e.target.tagName === "LI") {
    console.log("Clicked:", e.target.textContent);
  }
});
  

⚠️ Tips

  • Use preventDefault() to stop default behavior (like form submit).
  • Use stopPropagation() to prevent event bubbling.
  • Use addEventListener instead of inline onclick for better separation of logic.

✅ Conclusion

Mastering JavaScript events gives you the power to create interactive, dynamic web experiences. Start with these essential events, and you’ll be equipped to handle most user interactions on the web!

"The web is event-driven. The more you master events, the more control you gain over the browser." – A JavaScript Developer

Comments

Popular posts from this blog

How to Display Flash Messages in EJS using Node.js and Express

Displaying Flash Messages in EJS with Node.js and Express Flash messages are a great way to give users quick feedback — like "Login successful!" or "Please enter all fields!" . In this guide, you’ll learn how to implement them using: express-session connect-flash EJS templating 📦 Step 1: Install Required Packages npm install express express-session connect-flash ejs ⚙️ Step 2: Setup Express App and Middleware const express = require('express'); const session = require('express-session'); const flash = require('connect-flash'); const app = express(); // Set view engine app.set('view engine', 'ejs'); // Middleware app.use(express.urlencoded({ extended: true })); app.use(session({ secret: 'yourSecretKey', resave: false, saveUninitialized: true })); app.use(flash()); // Make flash messages available to all views app.use((req, res, next) => { res.lo...

Realtime Device Tracker using Node.js, Socket.IO & Leaflet

Realtime Device Tracker using Node.js, Socket.IO & Leaflet In this tutorial, you’ll learn how to build a realtime location tracking application that uses the browser’s GPS, Socket.IO for live communication, and Leaflet.js to display users on a map. 🚀 Project Overview Backend: Node.js, Express.js, Socket.IO Frontend: HTML, Leaflet.js, Socket.IO client Features: Live GPS tracking, multi-user map, disconnect cleanup 📁 Folder Structure project-root/ ├── app.js ├── package.json ├── src/ │ ├── public/ │ │ ├── css/ │ │ │ └── style.css │ │ └── js/ │ │ └── script.js │ ├── routes/ │ │ └── routers.js │ ├── socket/ │ │ └── socketHandler.js │ └── views/ │ └── index.ejs 🧠 How It Works Each user shares their location using the browser's navigator.geolocation API. Location is sent to the server via Socket.IO . The server broadcasts each user’s position to all clien...

How to Use L5-Swagger for API Documentation in Laravel

Integrating Swagger in Laravel: Annotations, JSON, and YAML What is Swagger? Swagger (OpenAPI) is a powerful tool for generating interactive API documentation. It helps developers understand and test your API easily. ✅ Step-by-Step Guide to Setup L5-Swagger 1. Install L5-Swagger Package composer require "darkaonline/l5-swagger" 2. Publish Config & View Files This command publishes the config file to config/l5-swagger.php : php artisan vendor:publish --provider "L5Swagger\L5SwaggerServiceProvider" 3. Configure Swagger (Optional) Edit the file config/l5-swagger.php to update: API Title Base Path Directories to scan for annotations 4. Add Swagger Annotations Add these before your controller class: /** * @OA\Info( * version="1.0.0", * title="Your API Title", * description=...