HTML таг script

Пример

Кратък пример как се използва тагът <script>.

<button id="helloBtn">Натисни ме</button>

<script>
  document.getElementById('helloBtn').addEventListener('click', function () {
    alert('Здравей от <script> таг!');
  });
</script>
Опитай в редактора

Дефиниция и употреба

Виж как се ползва тагът <script>.

<script> се използва за вграждане или зареждане на JavaScript код в HTML документ. С него можем да добавяме интерактивност, да манипулираме DOM, да изпращаме заявки към сървър, да валидираме форми и др.

Има два основни начина за използване:

  • Вграден (inline) скрипт – JavaScript кодът се пише директно между отварящия и затварящия таг:
    <script>
      console.log('Страницата е заредена');
    </script>
  • Външен файл – чрез атрибута src се посочва път до .js файл:
    <script src="app.js"></script>

Обичайно <script> се поставя в края на <body>, за да не блокира зареждането на съдържанието. Когато се използват атрибути като defer или async, скриптовете могат да се поставят и в <head>, като се контролира кога да бъдат изпълнени спрямо зареждането на HTML.

По подразбиране езикът е JavaScript и не е нужно да се задава type, но при нужда може да се използва (например type="module" за ES модули).

Browser Support

BrowserПоддръжка

Chrome
✔️

Firefox
✔️

Edge
✔️

Safari
✔️

Opera
✔️

Атрибути

Атрибут Описание Пример
src Път към външен JavaScript файл. <script src="main.js"></script>
async Зарежда скрипта асинхронно и го изпълнява веднага щом е готов (може да наруши реда на изпълнение). <script src="analytics.js" async></script>
defer Зарежда скрипта във фонов режим и го изпълнява след като HTML документът е парснат. <script src="app.js" defer></script>
type Определя типа на скрипта (напр. text/javascript или module). <script type="module" src="main.js"></script>
crossorigin Контролира CORS заявките за външни скриптове (anonymous, use-credentials). <script src="cdn.js" crossorigin="anonymous"></script>
integrity Позволява проверка на целостта на външен скрипт чрез SRI хеш. <script src="cdn.js" integrity="sha384-..." crossorigin="anonymous"></script>
nomodule Скриптът се изпълнява само в браузъри, които не поддържат ES модули. <script src="legacy.js" nomodule></script>
referrerpolicy Определя каква referrer информация да се изпраща при заявката за скрипта. <script src="cdn.js" referrerpolicy="no-referrer"></script>