سمة defer لـ HTML <script>

التعريف والاستخدام

defer السمة هي سمة بولية.

إذا تم تعيين defer السمة، يتم تحديد تنزيل السكربت بشكل متوازٍ أثناء تحليل الصفحة، ويتم تنفيذه بعد اكتمال تحليل الصفحة.

ملاحظة:defer السمة تنطبق فقط على سكريبات خارجية (فقط إذا كانت سمة src في هذه الحالة فقط يجب استخدامه).

ملاحظة:يمكن تنفيذ سكريبات خارجية بطرق متعددة:

  • إذا تم تعيين async: يتم تنزيل السكربت بشكل متوازٍ أثناء تحليل الصفحة، ويتم تنفيذه فور توفره (قبل اكتمال التحليل)
  • إذا تم تعيين defer (ولم يتم تعيين async): يتم تنزيل السكربت بشكل متوازٍ أثناء تحليل الصفحة، ويتم تنفيذه بعد اكتمال تحليل الصفحة
  • إذا لم يكن هناك async ولا defer: يتم تنزيل وتنفيذ السكربت على الفور، مما يمنع تحليل الصفحة حتى اكتمال تنفيذ السكربت

مثال

سيتم تحميل الجافا سكربت بشكل متوازي مع تحليل الصفحة، وسيتم تنفيذه بعد انتهاء تحليل الصفحة:

<script src="demo_defer.js" defer></script>

جرب بنفسك

النص

<script defer>

إرجاء تنفيذ الجافا سكربت

يمكنك التحكم في كيفية تنفيذ الجافا سكربت باستخدام خاصيات async وdefer. تُخبر خاصية defer المتصفح بأنه يجب انتظار تحميل وتحليل الصفحة قبل تنفيذ الجافا سكربت.

عندما يواجه المتصفح عنصر script يحتوي على خاصية defer، سيؤجل تحميل وتنفيذ الجافا سكربت حتى يتم تحليل جميع العناصر في مستند HTML.

وهذا يشبه نتيجة نقل script إلى نهاية الصفحة:

<body>
... ...
... ...
... ...
<script src="demo.js"></script>
</body>

دعم المتصفح

الرقم في الجدول يشير إلى إصدار أولي يدعم هذه الخاصية من المتصفح.

Chrome Edge Firefox Safari Opera
Chrome Edge Firefox Safari Opera
8.0 10.0 3.5 5.0 15.0