Атрибут defer HTML тега script

Атрибут defer является атрибутом-переключателем. Если данный атрибут указан, то скрипт будет запущен на исполнение только после того, как все элементы страницы будут полностью загружены.

Атрибут defer предназначен только для внешних скриптов и может использоваться только, если определен атрибут src.

Существует несколько способов исполнения внешних скриптов:

  • Если установлен атрибут async="async", то скрипт исполняется асинхронно, т. е. скрипт будет исполняться одновременно с загрузкой страницы
  • Если атрибут async не определен, а атрибут defer="defer", то скрипт будет исполнен сразу же, как будет закончена загрузка страницы
  • Если атрибуты async или defer не определены, то скрипт загружается и исполняется сразу же, до того как браузер продолжит готовит страницу к отображению

В XHTML минимизация атрибутов запрещена, поэтому атрибут defer должен определяться как <script defer="defer">.

Синтаксис
<script defer>

Пример использования атрибута

Скрипт не будет запускаться до полной загрузки страницы:


<script src="//msiter.ru/demo_async.js" defer></script>