Tech TutorBangla Web Documentation
Portfolio
HomeHTMLCSSTailwind CSSJavaScriptTypeScriptReactNext.jsNode.jsExpressSocket.IOExpoWordPressPostgreSQLPrismaPostgresNestJSMongoDBDockerTanStackTanStack TableRTK QueryGitGitHub
  • JavaScript Documentation48টি অধ্যায়
প্রযুক্তি নির্বাচন
HomeHTMLCSSTailwind CSSJavaScriptTypeScriptReactNext.jsNode.jsExpressSocket.IOExpoWordPressPostgreSQLPrismaPostgresNestJSMongoDBDockerTanStackTanStack TableRTK QueryGitGitHub
  • Introduction
  • JavaScript কী?
  • Syntax & Comments
  • Variables
  • Data Types: Basics
  • Data Types: Conversion
  • Data Types: Advanced
  • Strings
  • Numbers & Math
  • Date & Time
  • Operators
  • Conditions
  • Loops
  • Functions: Basics
  • Functions: Intermediate
  • Functions: Advanced
  • Scope & Hoisting
  • Closures & this
  • ES6+ Modern
  • Arrays: Basics
  • Arrays: Intermediate
  • Arrays: Advanced
  • Objects: Basics
  • Objects: Intermediate
  • Objects: Advanced
  • Class: Basics
  • Class: Intermediate
  • Class: Advanced
  • DOM: Basics
  • DOM: Intermediate
  • DOM: Advanced
  • Events: Basics
  • Events: Intermediate
  • Events: Advanced
  • Async JavaScript
  • Promise
  • Async / Await
  • Fetch API
  • JSON
  • Modules
  • Browser Storage
  • Event Loop Deep
  • Prototype Chain
  • Iterators & Generators
  • WeakMap, WeakSet, Proxy
  • Error Handling
  • Practice Problems
  • Mini Projects
  • Basics
  • Functions & Scope
  • Types & Syntax
  • Arrays & Objects
  • Advanced
  • Functional Programming
  • Objects & Symbols
  • Async Deep Dive
  • Modern JavaScript
  1. Docs
  2. JavaScript
  3. Events: Basics (ইভেন্ট)
JavaScriptBeginner

Events: Basics (ইভেন্ট)

Event কী, addEventListener, ক্লিক/keyboard/input ইভেন্ট, event object — পেজকে প্রতিক্রিয়াশীল করা বাংলায়।

19টি অংশবাংলা ভাষায়

Event হলো ব্যবহারকারীর কোনো কাজ — বাটন চাপা, টাইপ করা, মাউস ঘোরা। JavaScript event-এ প্রতিক্রিয়া জানিয়ে পেজকে interactive করে তোলে।

addEventListener

const btn = document.getElementById("saveBtn");

btn.addEventListener("click", () => {
  console.log("বাটন চাপা হয়েছে!");
});

addEventListener(ইভেন্টনাম, handler) — সবচেয়ে আধুনিক ও নির্ভরযোগ্য উপায়। একই element-এ একাধিক handler দেওয়া যায়।

Common events

// ক্লিক
btn.addEventListener("click", handler);

// ফর্ম submit
form.addEventListener("submit", (e) => {
  e.preventDefault();         // পাতার reload আটকানো
  console.log("সাবমিট");
});

// keyboard — চেপে ছেড়ে দিলে
input.addEventListener("keyup", (e) => {
  console.log("চাপা key:", e.key);
});

// input-এর মান বদলে
input.addEventListener("input", () => {
  console.log(input.value);
});

event object

btn.addEventListener("click", (event) => {
  console.log(event.type);       // "click"
  console.log(event.target);     // যা চাপা পড়েছে
  console.log(event.clientX, event.clientY); // মাউস-এর অবস্থান
});

handler-এ প্রথম argument হলো event object — ইভেন্টের বিস্তারিত (type, target, key, position)।

Mouse events

box.addEventListener("mouseenter", () => console.log("মাউস ভেতরে ঢুকেছে"));
box.addEventListener("mouseleave", () => console.log("বেরিয়ে গেছে"));
box.addEventListener("dblclick", () => console.log("ডাবল ক্লিক"));

document.addEventListener("mousemove", (e) => {
  const pos = `${e.clientX}, ${e.clientY}`;
  coords.textContent = pos;
});

Keyboard events

document.addEventListener("keydown", (e) => {
  if (e.key === "Escape") {
    modal.classList.add("hidden");  // Esc চেপে বন্ধ
  }
});

// shortcut — Ctrl+S
if (e.ctrlKey && e.key.toLowerCase() === "s") {
  e.preventDefault();
  save();
}

HTML attribute vs addEventListener

<!-- পুরনো পদ্ধতি (এড়িয়ে চলুন) -->
<button onclick="doSomething()">চাপুন</button>

<!-- আধুনিক: JS-এ রেজিস্টার -->
<button id="btn">চাপুন</button>
<script>
  const btn = document.getElementById("btn");
  btn.addEventListener("click", () => {
    console.log("modern way");
  });
</script>

onclick-attribute inline HTML-কোড মেশানো — debuggable নয়। addEventListener দিয়ে HTML পরিষ্কার থাকে, একাধিক handler চলে।

ইভেন্টকখন
clickক্লিকে
submitফর্ম জমায়
inputtext input বদলে
keydown / keyupkey চাপলে / ছাড়লে
mouseenter / mouseleaveমাউস ঢোকে/বাহির
focus / blurফোকাস-এ / ফোকাস ছাড়ে
প্রথম rule

প্রথমে element খুঁজে নিন (querySelector), তারপর listener বাঁধুন — element না পেলে listener-ও কাজ করবে না।

Practice

একটি বাটনে click handler লিখুন যা একটি <p>-এর textContent বদলায় — প্রথম interactive piece।

শেষ প্যারায় নিজে practice করুন — কোড কপি করে নিজের এডিটরে চালিয়ে দেখুন।
আগেরDOM: Advanced (Dynamic DOM)পরেরEvents: Intermediate
এই পেজে
Tech Tutor

বাংলায় ওয়েব ডেভেলপমেন্ট ডকুমেন্টেশন শিখুন — ধাপে ধাপে।

Homeসব ডকুমেন্টেশনQuick Startআমার নোটস

© 2026 Tech Tutor. বাংলায় শিখুন, বাংলায় গড়ুন।

mdanamolhasan1998@gmail.com