<script>: عنصر SCRIPT

آخر تحديث: 2026-10-13

<script>عنصر SCRIPT

يضم أو يشير إلى JavaScript للتفاعلية؛ يوضع في head أو body، وغالبًا في نهاية body لتسريع العرض.

الفئةالبرامج النصية والتضمين
نموذج المحتوىمحتوى تدفقي
العناصر الأم المسموحةأي عنصر يقبل المحتوى التدفقي
وسم الإغلاقنعم — يتطلب إغلاق </script> وسم
الحالةقياسي

📝 البنية

<script src="app.js"></script>

⚙️ السمات

يدعم هذا العنصر السمات العامة بالإضافة إلى ما يلي:

السمةالقيمةالوصف
srcURL of an external script (inline code ignored when src is set).
typeScript type, default text/javascript (module for ES modules).
asyncExecutes as soon as downloaded, without blocking parsing.
deferRuns after parsing, before DOMContentLoaded.
crossoriginCORS setting for cross-origin scripts.

▶ مثال

عدّل الكود أدناه وشاهد النتيجة المباشرة في الملعب:

🌐 دعم المتصفح

المتصفح ChromeChrome EdgeEdge FirefoxFirefox SafariSafari OperaOpera
<script> ✓ v1 ✓ v12 ✓ v1 ✓ v1 ✓ v1
مدعوم في جميع المتصفحات الرئيسية
نصيحة: استخدم src للملفات الخارجية؛ الكود المضمّن يوضع بين الوسوم؛ async/defer يطبقان على السكربتات الخارجية فقط.

❓ الأسئلة الشائعة

Qما الفرق بين async و defer في script؟
Aكلاهما تحميل غير معرقِل للسكربت الخارجي: async ينفذ فور اكتمال التنزيل بلا ضمان الترتيب (يناسب السكربتات المستقلة كالإحصاء)؛ وdefer ينفذ بالترتيب بعد اكتمال تحليل DOM (يناسب السكربتات الرئيسية المعتمدة على DOM). وبدون أحدهما يعرقل التنزيل تحليل HTML — في المشاريع الحديثة أضف أحدهما على الأقل للسكربتات الخارجية.
Qأين يوضع script: في head أم نهاية body؟
Aالسكربتات ذات defer توضع في head (تنزيل مبكر دون تعريق التصيير)؛ والسكربتات المضمّنة أو المعتمدة على DOM بلا defer توضع في نهاية body. والعادة الحديثة الافتراضية: head + defer، ونوع module سلوكه defer تلقائيًا.
Qما المميز في type='module' في script؟
Aيفعّل ES Module: دعم import/export، ووضع strict تلقائي، وتنفيذ مؤجل defer افتراضيًا، ونطاق مستقل لا يلوث العالمي. السكربتات التقليدية بلا module نطاقها العالمي وتنفيذها متزامن. يُنصح بتوحيد سكربتات المشاريع الجديدة على module.
المزيد من الحالات قادمة قريبًا — ترقبوا.

📚 دروس ذات صلة

Web-Tutorial.com

فريق Web-Tutorial التقني

منصة دروس برمجية يديرها عدة مطورين. كل درس يتم كتابته ومراجعته بواسطة مطورين متخصصين في المجال. نعمل على ضمان دقة وموثوقية المحتوى — إذا لاحظت أي مشكلة، فيرجى إخبارنا.

100%