HTML тег script

Тег <script> определяет скрипты, исполняемые на стороне пользователя, например, JavaScript.

Элемент <script> либо непосредственно содержит сам скрипт, либо при помощи атрибута src указывает на внешний файл скрипта.

Если определяется атрибут src, то элемент <script> должен быть пустым.

Также, обратите внимание на элемент <noscript>, который предназначен для пользователей, браузер которых не поддерживает скрипты.

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

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

Разница между HTML 4.01 и HTML5

Атрибут type в HTML 4 обязателен, но оптционален в HTML5.

Атрибут async был добавлен в HTML5.

Различия между HTML и XHTML

В XHTML контент внутри скриптов декларируется как данные #PCDATA (вместо CDATA). Это означает, что сущности будут интерпретированы.

Это означает, что в XHTML все специальные символы должны быть кодированы, либо весь контент должен быть размещен в секции CDATA:


 <script type="text/javascript">
 //<![CDATA[
 var i = 10;
 if (i < 5) {
   // некий код
 }
 //]]>
 </script>

Атрибуты тега <script>
Атрибут Описание
async Устанавливает асинхронный режим исполнения скрипта
charset Определяет кодировку символов скрипта
defer Устанавливает отложенный режим запуска скрипта, пока не будет загружена страница
src Определяет URL внешнего файла скрипта
type Определяет медиа-тип скрипта

Общие атрибуты

Тег <script> поддерживает общие атрибуты.

HTML пример

Вставляет в код страницы надпись "Hello JavaScript!" при помощи JavaScript:


<script>
   document.getElementById("demo").innerHTML = "Hello JavaScript!";
</script>