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>