Скриптам лучше в подвал
Скрипт — это определенная программа, которая расширяет функционал сайта. Например, на сайтах часто бывает функция обратного звонка — для ее осуществления используется скрипт. Счетчик посещений, система комментариев, всплывающие окна, калькулятор, динамическое меню и другие «фишки» сайта — это всё сделано с помощью скриптов.
В практическом смысле скрипт — это код, который описывает последовательность действий, который браузер выполняет в соответствии со сценарием (само слово «script» переводится как «сценарий»). Скрипты пишутся на языках программирования (например, php, Perl, JavaScript).
Если скрипт простой, то его код прописывается прямо в html-коде страницы в теге . А если скрипт сложный, то его выносят в отдельный файл, а в HTML указывается путь к этому файлу.
По этому пути браузер скачивает скрипт, но только в первый раз, потом он будет брать его из кэша. Благодаря этому один и тот же большой скрипт может использоваться на разных страницах без полной перезагрузки с сервера.
- Существует три варианта мест в HTML структуре страницы, куда можно вставить скрипт:
- Между тегами , то есть в «шапку» сайта.
- В теле документа, между тегами body
- Между тегами footer, то есть в «подвал» сайта.
Лучше выбрать третий вариант и вот почему.
Скрипт — это всегда дополнительная нагрузка на сайт. Подключение скриптов добавляет не только функции, но и веса странице, и соответственно увеличивает время ее загрузки. Чем больше скриптов, тем меньше скорости загрузки.
Сайт грузится постепенно сверху вниз, и если браузер встречает в коде страницы скрипт или путь к нему, то по правилам он обязан сначала выполнить его и только после загрузить остальное содержимое документа.
То есть если тег будет прописан в шапке сайта, то браузер сначала потратит время на него и только потом загрузит контент. Нам же нужно, чтобы браузер увидел код скрипта в последнюю очередь, когда все полезное содержимое страницы уже загружено, и пользователю не пришлось ждать. Поэтому рекомендуют помещать скрипт в подвале сайта.
Разработка SEO-сайтов с пожизненной гарантиейСоздаем невероятные SEO-сайты, оптимизированные по 69 параметрам уже на этапе разработки
Но бывают ситуации, в которых такая последовательная загрузка скриптов не подходит. Например, для счетчиков посещений. Нам выгоднее, если скрипт загрузится и посчитает посещение как можно быстрее, а не ждать пока страница полностью загрузится. Для таких случаев применяются другой метод — асинхронный. Он разрешает браузеру загрузить и выполнить скрипт, не дожидаясь полной загрузки html документа.
Бывает, что на странице установлено сразу несколько скриптов, и они зависят друг от друга, тогда браузеру дается указание загружать их параллельно обработке документа и выполнить скрипты после загрузки страницы.
Асинхронная и отложенная работа скриптов устанавливается специальными атрибутами, которые прописываются в теге .
Определить, по какой модели действовать, сможет только опытный разработчик.