ফিক্সড পজিশন বাটন এবং ফর্ম কন্টেইনার ব্যবহার করে পপআপ চ্যাট উইন্ডো তৈরি করা যায় যা ক্লিক করলে খুলে এবং বন্ধ হয়।
উদাহরণ: পপআপ চ্যাট উইন্ডো
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1" />
<style>
body { font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; }
* { box-sizing: border-box; }
.openChatBtn {
background-color: rgb(123, 28, 179); color: white; padding: 16px 20px;
border: none; font-weight: 500; font-size: 18px; cursor: pointer; opacity: 0.8;
position: fixed; bottom: 23px; right: 28px; width: 280px;
}
.openChat {
display: none; position: fixed; bottom: 0; right: 15px;
border: 3px solid #ff08086b; z-index: 9;
}
form { max-width: 300px; padding: 10px; background-color: white; }
form textarea {
width: 100%; font-size: 18px; padding: 15px; margin: 5px 0 22px 0;
border: none; font-weight: 500; background: #d5e7ff; color: rgb(0, 0, 0);
resize: none; min-height: 200px;
}
form textarea:focus { background-color: rgb(219, 255, 252); outline: none; }
form .btn {
background-color: rgb(34, 197, 107); color: white; padding: 16px 20px;
font-weight: bold; border: none; cursor: pointer; width: 100%;
margin-bottom: 10px; opacity: 0.8;
}
form .close { background-color: red; }
form .btn:hover, .openChatBtn:hover { opacity: 1; }
</style>
</head>
<body>
<h1>পপআপ চ্যাট উইন্ডো উদাহরণ</h1>
<h2>নিচের বাটনে ক্লিক করুন চ্যাট শুরু করতে</h2>
<button class="openChatBtn" onclick="openForm()">চ্যাট</button>
<div class="openChat">
<form>
<h1>চ্যাট</h1>
<label for="msg"><b>মেসেজ</b></label>
<textarea placeholder="মেসেজ টাইপ করুন.." name="msg" required></textarea>
<button type="submit" class="btn">পাঠান</button>
<button type="button" class="btn close" onclick="closeForm()"> বন্ধ </button>
</form>
</div>
<script>
document.querySelector(".openChatBtn").addEventListener("click", openForm);
document.querySelector(".close").addEventListener("click", closeForm);
function openForm() { document.querySelector(".openChat").style.display = "block"; }
function closeForm() { document.querySelector(".openChat").style.display = "none"; }
</script>
</body>
</html>
কোড ব্যাখ্যা
- .openChatBtn: ফিক্সড বাটন, ডান নিচে।
- .openChat { display: none; }: ডিফল্টভাবে লুকানো।
- JavaScript openForm/closeForm: display: block/none টগল করে।
- form textarea: মেসেজ ইনপুট, রিসাইজ নিষিদ্ধ।
উন্নতি
ARIA অ্যাট্রিবিউট (`aria-expanded`, `role="dialog"`), ESC কী দিয়ে বন্ধ, ফোকাস ট্র্যাপ, এবং WebSocket ইন্টিগ্রেশন যোগ করুন প্রোডাকশন-রেডি চ্যাটের জন্য।