<script> - HTML-елемент для скриптів
HTML-елемент <script> використовується для вбудовування або посилання на виконуваний код; найчастіше це JavaScript.
Елемент <script> може містити скрипт безпосередньо всередині себе або посилатися на зовнішній файл за допомогою атрибута src.
Скрипти можуть бути класичними або модулями. Класичні скрипти завантажуються та виконуються негайно, блокуючи подальший розбір HTML. Модулі JavaScript (з атрибутом type="module") дозволяють використовувати функціональність модулів, таку як import та export.
Якщо вказано атрибут src, вміст тега <script> ігнорується.
Синтаксис
<!-- Вбудований скрипт -->
<script>
console.log("Привіт, світ!");
</script>
<!-- Зовнішній скрипт -->
<script src="script.js"></script>Атрибути
Цей тег може мати глобальні атрибути.
srcURL-адреса зовнішнього скрипта.
typeВизначає тип скрипта. За замовчуванням —
text/javascript. Для модулів JavaScript використовуєтьсяmodule. Також може використовуватися для вбудовування даних, наприклад,application/json.asyncБулевий атрибут, який вказує, що скрипт має виконуватися асинхронно, як тільки він буде завантажений, не блокуючи розбір HTML. Працює лише для зовнішніх скриптів.
deferБулевий атрибут, який вказує, що скрипт має виконуватися після повного розбору HTML, але перед подією
DOMContentLoaded. Працює лише для зовнішніх скриптів.nomoduleБулевий атрибут, який вказує, що скрипт не повинен виконуватися в браузерах, які підтримують модулі JavaScript. Використовується для надання запасного варіанту для старих браузерів.
crossoriginВизначає, чи слід використовувати CORS при завантаженні скрипта.
integrityМістить хеш-код ресурсу для перевірки його цілісності (Subresource Integrity).
referrerpolicyВизначає, яку інформацію про реферера надсилати під час завантаження скрипта.
blockingВказує, що певні операції повинні бути заблоковані до завантаження ресурсу.
fetchpriorityВказує відносну пріоритетність завантаження скрипта. Можливі значення:
high,low,auto.
Технічне резюме
| Категорія контенту | |
|---|---|
| Дозволений вміст | Вбудований скрипт або дані, залежно від атрибута |
| Пропуск тегів | Жоден, початковий та кінцевий теги є обов’язковими. |
| Дозволені батьківські елементи | Будь-який елемент, що приймає метадані або фразовий контент. |
| Роль ARIA | Немає відповідної ролі. |
| DOM інтерфейс |
|
Підтримка браузерів
<script> | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
async | |||||||||||||
attributionsrc | |||||||||||||
blocking | |||||||||||||
crossorigin | |||||||||||||
defer | |||||||||||||
fetchpriority | |||||||||||||
integrity | |||||||||||||
nomodule | |||||||||||||
referrerpolicy | |||||||||||||
src | |||||||||||||
type |