CoffeeScript একটি শক্তিশালী এবং সংক্ষিপ্ত সিনট্যাক্স সরবরাহ করে যা JavaScript-এর উপর ভিত্তি করে কাজ করে। DOM (Document Object Model) ম্যানিপুলেশন CoffeeScript-এ JavaScript-এর মতোই করা হয়, তবে CoffeeScript-এর সিনট্যাক্স কোডটি আরও সহজ এবং পরিষ্কার করে তোলে। DOM ম্যানিপুলেশন হলো HTML পেজের উপাদান (যেমন, ট্যাগ, ক্লাস, আইডি) গুলি কিভাবে JavaScript দিয়ে পরিচালনা করা যায় তার একটি প্রক্রিয়া।
এখানে CoffeeScript ব্যবহার করে DOM ম্যানিপুলেশনের কিছু মূল ধারণা এবং উদাহরণ আলোচনা করা হলো।
১. DOM এ উপাদান সিলেক্ট করা
CoffeeScript-এ DOM উপাদান সিলেক্ট করতে document.getElementById, document.getElementsByClassName, document.querySelector ইত্যাদি পদ্ধতি ব্যবহার করা হয়। এই পদ্ধতিগুলি JavaScript-এর মতোই, তবে CoffeeScript-এ কোড কম এবং পরিষ্কার থাকে।
উদাহরণ: আইডি দ্বারা উপাদান সিলেক্ট করা
element = document.getElementById('myElement')
console.log element
উদাহরণ: ক্লাস দ্বারা উপাদান সিলেক্ট করা
elements = document.getElementsByClassName('myClass')
console.log elements
উদাহরণ: CSS সিলেক্টর দ্বারা উপাদান সিলেক্ট করা
element = document.querySelector('.myClass')
console.log element
২. DOM উপাদানে কন্টেন্ট পরিবর্তন করা
DOM উপাদানের কন্টেন্ট পরিবর্তন করতে innerHTML বা textContent ব্যবহার করা হয়। CoffeeScript-এ এটি খুব সহজ।
উদাহরণ: innerHTML দিয়ে কন্টেন্ট পরিবর্তন
element = document.getElementById('myElement')
element.innerHTML = "New content here!"
উদাহরণ: textContent দিয়ে কন্টেন্ট পরিবর্তন
element = document.getElementById('myElement')
element.textContent = "This is text content!"
innerHTML HTML কন্টেন্টের মাধ্যমে কন্টেন্ট সেট করে, আর textContent শুধুমাত্র টেক্সট কন্টেন্ট সেট করে।
৩. DOM উপাদানে স্টাইল পরিবর্তন করা
DOM উপাদানের স্টাইল পরিবর্তন করতে style প্রপার্টি ব্যবহার করা হয়। CoffeeScript-এ এটি JavaScript-এর মতোই ব্যবহৃত হয়।
উদাহরণ: স্টাইল পরিবর্তন করা
element = document.getElementById('myElement')
element.style.color = 'red'
element.style.backgroundColor = 'yellow'
৪. DOM উপাদানে ইভেন্ট লিসনার যোগ করা
CoffeeScript-এ DOM ইভেন্ট ম্যানিপুলেশন যেমন click, mouseover ইত্যাদি ইভেন্টগুলি খুব সহজে যোগ করা যায়। আপনি addEventListener পদ্ধতি ব্যবহার করে ইভেন্ট যোগ করতে পারেন।
উদাহরণ: ক্লিক ইভেন্ট যোগ করা
button = document.getElementById('myButton')
button.addEventListener 'click', ->
alert "Button clicked!"
এই কোডে, button উপাদানে ক্লিক ইভেন্ট লিসনার যোগ করা হয়েছে। যখন ইউজার বাটনে ক্লিক করবেন, তখন একটি এলার্ট বক্স দেখাবে।
৫. নতুন DOM উপাদান তৈরি করা এবং অ্যাপেন্ড করা
নতুন DOM উপাদান তৈরি করতে document.createElement ব্যবহার করা হয় এবং সেটি পেজের মধ্যে অ্যাপেন্ড করতে appendChild ব্যবহার করা হয়।
উদাহরণ: নতুন উপাদান তৈরি এবং পেজে যোগ করা
newElement = document.createElement('div')
newElement.textContent = "Hello, I am a new element!"
document.body.appendChild newElement
এখানে, একটি নতুন div ট্যাগ তৈরি করা হয়েছে এবং তার মধ্যে টেক্সট সেট করা হয়েছে, তারপর সেটি পেজের body-এর মধ্যে অ্যাপেন্ড করা হয়েছে।
৬. DOM উপাদান সরানো
একটি DOM উপাদান সরাতে removeChild ব্যবহার করা হয়। CoffeeScript-এ এই পদ্ধতিটি সহজেই ব্যবহৃত হয়।
উদাহরণ: DOM উপাদান সরানো
element = document.getElementById('myElement')
document.body.removeChild element
এখানে, myElement আইডি সহ উপাদানটি body থেকে সরিয়ে নেওয়া হয়েছে।
৭. DOM ট্রান্সিশন এবং অ্যানিমেশন
CoffeeScript-এ CSS অ্যানিমেশন এবং ট্রান্সিশনও করা যেতে পারে। JavaScript কোডের মতোই, আপনি CSS প্রপার্টি পরিবর্তন করে DOM উপাদানে অ্যানিমেশন বা ট্রান্সিশন যোগ করতে পারেন।
উদাহরণ: CSS ট্রান্সিশন যোগ করা
element = document.getElementById('myElement')
element.style.transition = 'all 0.5s ease'
element.style.transform = 'scale(1.5)'
এখানে, myElement উপাদানে একটি ট্রান্সিশন যোগ করা হয়েছে যা 0.5 সেকেন্ডে সম্পন্ন হবে।
সারাংশ
CoffeeScript-এ DOM ম্যানিপুলেশন JavaScript-এর মতোই কাজ করে, তবে CoffeeScript-এর সংক্ষিপ্ত সিনট্যাক্স কোড লেখাকে সহজ এবং দ্রুততর করে তোলে। আপনি DOM উপাদান সিলেক্ট করা, কন্টেন্ট পরিবর্তন, স্টাইল পরিবর্তন, ইভেন্ট ম্যানিপুলেশন, নতুন উপাদান তৈরি এবং অন্যান্য বিভিন্ন DOM ম্যানিপুলেশন কাজ করতে CoffeeScript ব্যবহার করতে পারেন। CoffeeScript-এর এই সহজ সিনট্যাক্স JavaScript কোডিংকে আরও দক্ষ এবং পরিস্কার করে তোলে।
Read more