Атрибут async HTML тега <script>

Значение и применение

При использовании внешнего скрипта, браузер будет ожидать его выполнения, а уже после этого отобразит ту часть документа, которая находится под ним (по умолчанию).

Логический атрибут async (HTML тега <script>) указывает, что скрипт выполняется асинхронно (только для внешних скриптов, которые загружаются с использованием атрибута src).

При использовании нескольких скриптов, которые имеют атрибут async первым будет загружен тот, который имеет меньший размер.

Чтобы скрипт выполнился только тогда, когда страница загрузится полностью необходимо использовать атрибут defer. При этом если используется нескольких скриптов, которые имеют атрибут defer первым будет загружен тот, который был раньше указан (независимо от его размера), а затем браузер перейдет уже к загрузке второго, и так далее.

Поддержка браузерами

Спецификация: multipage

Поддерживается во всех основных браузерах с 2015 года.

Показать браузеры
Совместимостьhtml.elements.script.async
ВозможностьКомпьютерыМобильные
ChromeEdgeFirefoxOperaSafariChrome AndroidFirefox for AndroidOpera AndroidSafari on iOSSamsung BrowserWebView AndroidWebView on iOS
async✓1✓12✓3.6✓15✓≤4✓18✓4✓14✓≤3.2✓1.0✓4.4✓≤3.2

поддерживается с ограничениями нет поддержки нет данных≤31 — не позднее версии 31

Синтаксис:

HTML
<script async>

Значения атрибута

ЗначениеОписание
asyncЗначение атрибута требуется только в XHTML (<script async = "async">).

Отличия HTML 4.01 от HTML 5

Атрибут считается новым в HTML 5.

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

HTML
 <!-- атрибутом src  указываем относительный путь к файлу со скриптом (файл в той же папке, что и документ),
и атрибутом async указываем, что скрипт выполнится асинхронно -->
<script src = "myscript.js" async>
// здесь не должно быть какой-либо информации
</script>

Пример использования нескольких скриптов, которые имеют атрибут async:

HTML
<script src = "myscript1.js" async> // будет загружен первым тот, чей размер меньше
<script src = "myscript2.js" async>