Перейти к содержимому

Атрибут defer HTML

Атрибут defer HTML указывает, что скрипт выполняется после завершения парсинга страницы. Это булев атрибут. Данный атрибут работает только с внешними скриптами и должен использоваться только при наличии атрибута src.

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

Вы можете использовать этот атрибут на элементе &lt;script&gt;.

Внешний скрипт может быть выполнен следующими способами:

  • При наличии async скрипт будет выполнен асинхронно, пока продолжается парсинг страницы.
  • Когда отсутствует async, но присутствует defer, скрипт будет выполнен после завершения парсинга страницы в порядке их появления в документе.
  • Когда отсутствуют и async, и defer, скрипт будет выполнен немедленно, прежде чем браузер продолжит парсинг.

Синтаксис

Синтаксис атрибута defer HTML

html
<script src="example.js" defer></script>

Пример атрибута defer HTML:

Пример атрибута defer HTML

html
<!DOCTYPE html>
<html>
  <head>
    <title>Title of the document</title>
    <script src="example.js" defer></script>
    <noscript>Sorry, your browser doesn't support JavaScript!</noscript>
  </head>
  <body>
    <h1>Example</h1>
    <p>The "defer" attribute specifies that a script is executed when a page has finished the parsing. It is a boolean attribute.</p>
  </body>
</html>

Практика

Как правильно использовать атрибут 'defer' в HTML?

Считаете ли это полезным?

Предпросмотр dual-run — сравните с маршрутами Symfony на продакшене.