الإشعارات (Toasts)
الإشعارات (Toasts) هي نوافذ صغيرة تظهر مؤقتاً لتنبيه المستخدم (مثل إشعارات نظام التشغيل). صُممت لتختفي تلقائياً، وتعتمد على Flexbox لتحديد موقعها على الشاشة.
التوثيق الرسمي1. الشكل الأساسي (Basic)
يتكون من هيدر (Header) وجسم (Body). أضف show لجعله ظاهراً دائماً.
المعاينة
نظام الإشعارات
منذ 11 دقيقة
مرحباً أيها العالم! هذا إشعار بسيط.
شرح الكود:
toast: الكلاس الأساسي لحاوية الإشعار. بشكل افتراضي يكون الإشعار مخفياً. وضعناshowهنا لغرض المعاينة فقط.toast-headerوtoast-body: لتقسيم الإشعار إلى قسمين. الهيدر عادة يحتوي على العنوان وزر الإغلاق.data-bs-dismiss="toast": يقوم بإخفاء الإشعار عند الضغط على زر X.me-auto: تعني (Margin End Auto)، وتقوم بدفع زر الإغلاق والوقت إلى أقصى اليسار ليبقى العنوان على اليمين.
2. تشغيل الإشعار عبر زر (Live Example)
لإظهار الإشعار برمجياً (عند الضغط)، يجب تهيئته أولاً باستخدام JavaScript.
المعاينة
تنبيه النظام
الآن
لقد قمت للتو بالضغط على الزر، فظهر هذا الإشعار! سيختفي تلقائياً.
شرح الكود:
toast-container position-fixed bottom-0 end-0 p-3: هذه الحاوية توضع في أي مكان في الصفحة (يفضل قبل إغلاق</body>)، وهي تقوم بتثبيت الإشعار في أسفل يمين (end-0) الشاشة.- على عكس (Alert)، الإشعارات (Toasts) مخفية بطبيعتها، ولإظهارها نحتاج لسطرين من الجافاسكربت: تعريف الكائن
const t = new bootstrap.Toast(element)ثم طلب العرضt.show(). (هذا الكود متضمن في زر التجربة).
3. إشعارات ملونة (Custom Content)
يمكنك التخلص من الهيدر ووضع رسالة بخلفية ملونة (مثل تنبيهات الأخطاء أو النجاح).
المعاينة
مرحباً أيها العالم! هذه رسالة إشعار زرقاء.
تم حفظ التعديلات بنجاح.
شرح الكود:
- لا نستخدم
toast-headerهنا. نكتفي بـtoast-bodyوزر إغلاق فقط بجانبه. d-flex align-items-center: وضعناها لجعل النص وزر الإغلاق في نفس السطر وبتوسيط عمودي.text-bg-success: لتلوين الإشعار.border-0: لإزالة الإطار الافتراضي لجعله يبدو مسطحاً (Flat).btn-close-white: لجعل زر الإغلاق أبيض وواضح فوق الخلفية الملونة.
4. إشعارات متعددة (Stacking)
إذا كان هناك أكثر من إشعار في نفس الوقت، يتم رصها فوق بعضها باستخدام toast-container.
المعاينة
الإشعار الأول
الآن
انظر، لقد تم ترتيب الإشعارين فوق بعضهما.
الإشعار الثاني
منذ ثانيتين
المسافة بينهما محددة تلقائياً بفضل الـ Container.
شرح الكود:
toast-container: هو الحاوية السحرية. أي إشعارات توضع داخله سيتم ترتيبها ورصها (Stacking) فوق بعضها مع ترك مسافة (gap) بسيطة بينها دون الحاجة لبرمجتها.