Как подключить Javascript файл к html документу?

Содержание:

JS или JavaScript – язык программирования, который наиболее часто используется для разработки веб-ресурсов. Кроме того, он считается основным инструментов оживления интернет-страничек, поэтому у многих начинающих разработчиков вполне закономерно возникает вопрос, как подключить скрипт JS к HTML. Подробно разберем все возможности и способы подключения JavaScript-кода и файла непосредственно к HTML-документу в этой статье.

Как подключить Javascript файл к html документу?Как подключить Javascript файл к html документу?
Получи грант, покрывающий 50% стоимости обучения
И обучайся новой профессии онлайн из любой точки мира

Методики добавления сценариев в HTML

В наше время выполнить такую задачу возможно двумя способами – встроить код в файл, подключить внешний документ JavaScript. Рассмотрим все доступные варианты максимально детально.

<script>

Любые виды скриптов необходимо вставлять в html исключительно посредством этого компонента. Между открывающимся тегом и закрывающимся можно вставить ссылку на внешний документ или непосредственно код. Сегодня <script> может размещаться не только в компоненте <head>, но также и в самом теле web-странички.

Используя этот метод, можно разместить на одной интернет-странице сразу несколько разнообразных сценариев. Но в такой ситуации, как веб-браузер будет выполнять размещенные сценарии? В большинстве случаев выполняются они по мере их непосредственной загрузки. Важно напомнить, что программа читает html-файл сверху вниз, поэтому, встречая такой тег, ПО рассматривает данную информацию как сценарий и, соответственно, выполняет его.

Остальная информация на веб-страничке не будет загружаться и отображаться до того момента, пока система не выполнит абсолютно весь код в <script>.

Как подключить Javascript файл к html документу?
87% наших выпускников уже работают в IT
Оставь заявку, и мы поможем с выбором новой профессии

JS в элементах событий HTML-компонентов

Сегодня не всегда существует потребность в том, чтобы сценарий выполнялся системой мгновенно, например, сразу после запуска странички. В большинстве случаев это может потребоваться при выполнении определенного действия пользователем, например, когда посетитель сайта нажал на выбранную кнопку.

В такой ситуации <script> размещается непосредственно в элементе <head>, дополняется компонентом <button>, где указывается четко, какое событие должно произойти для запуска сценария – реакция системы на нажатие на кнопку. При выполнении такого действия произойдет активация события onclick.

Интеграция с внешним Javascript-файлом

В большинстве случаев оптимальной считается загрузка скрипта непосредственно из внешнего документа. Этот вариант используется, когда необходимо загрузить какой-либо стандартный файл JS, используя для этого внешний источник. Достаточно часто разработчики используют для этого библиотеку jQuery. Еще один вариант – загружаемый скрипт является большим интернет-приложением, которое разрабатывалось специалистами отдельно от веб-странички. Загрузка из стороннего файла является превосходным решением, если несколько сайтов нуждаются в программе JS.

Чтобы подключить внешний файл, потребуется также использовать <script>. Между открывающимся и закрывающимся тегом потребуется прописать не код программного обеспечения, а непосредственный путь к документу, которое имеет расширение .js, и где записана соответствующая комбинация. При этом результат выполнения такого сценария, который был добавлен описанным выше способом, абсолютно ничем не отличается от кода, указанного в html-страничке.

На веб-странице возможно прописывать любое количество документов с расширением .js. Они будут скачиваться и активизироваться на выполнение соответствующего сценария. Обратим внимание на то, что такие теги могут вставляться в любые места странички, указываться последовательно один за другим.

Добавление кода JavaScript в HTML посредством интеграции внешнего скрипта, указания комбинации запрещено. Разработчику следует остановить свой выбор на одном из двух вариантов.

Как подключить Javascript файл к html документу?

Подключение JS с учетом отложенных/асинхронных сценариев

Как вспоминалось выше, традиционно абсолютно все файлы JS кода останавливают парсинг HTML-документа до момента, пока не произойдет загрузка и не будет реализован скрипт. Это увеличивает временной промежуток до базовой отрисовки веб-страницы. Когда <script> прописывается в середине странички, до момента его реализации не будет отображаться часть web-страницы под скриптом. Соответствующее поведение интернет-браузера носит название «синхронное».

Оно может доставлять некоторые проблемы, например, если придется системе загружать несколько разных JavaScript-документов, поскольку таким образом существенно увеличивается время отрисовки. Решить такую проблему возможно с помощью дополнительных компонентов «defer» и «async» в элементах скрипта.

<async>

Этот атрибут применяется для указания интернет-браузеру информации о том, что сценарий будет выполняться асинхронно. Наличие такого тега дает понять системе, что приостанавливать обработку HTML не стоит для загрузки, реализации скрипта. Это значит, что разбор документа и выполнение скрипта могут осуществляться параллельно.

Для сценариев, где используется <async>, не существует гарантий, что реализация скрипта будет осуществляться только в порядке добавления элементов. Например, в некоторых ситуациях 2-й скрипт может выполняться быстрее, чем первый. По этой причине важно проконтролировать отсутствие зависимости между разными компонентами.

<defer>

Этот компонент откладывает выполнение сценария до того момента, пока вся страничка не загрузится полностью. Как и в случае с асинхронным типом загрузки скриптов, JavaScript может быть также загружен в период, когда html еще подгружается. При этом, если JS-документ будет полностью подгружен системой до полноценной обработки сайта, сценарий не будет выполняться до завершения данного процесса.

Простыми словами, использование данного атрибута гарантирует разработчику, что реализация сценария начнется только после того, как веб-браузер выполнит все до закрывающего </html>. Также в отличие от «асинхронного» периода, сохраняется определенный порядок реализации всех скриптов с компонентом «defer».

Использование данного атрибута актуально, когда в коде предусмотрена работа с html, но при этом разработчики должны быть полностью уверены в отрисовке всей странички. Важно понимать, что оба компонента поддерживаются исключительно со сторонними файлами JS, поскольку работают с элементом src.

Увеличение массы веб-ресурса

Последние статистические данные говорят о том, что начиная с 2018 года средний вес интернет-страницы составляет 1720 килобайт. За 8 лет данный показатель увеличился в больше, чем 3.5 раза. Причин для повышения массы сайта может быть множество, например, использование «тяжелой» графики или увеличение доли внешних JS-файлов.

Недостаточно просто разобраться в том, как подключить библиотеку js к html, потребуется также понять, как искоренить причину подтормаживания веб-ресурса. Порой пользователям приходится ждать по несколько секунд, пока загрузится страничка полностью, потом уходит еще время на использование клавиатуры или мыши для введения какой-либо информации. Кроме того, достаточно часто страничка двигается рывками даже при максимально быстрой загрузки интерфейса.

В чем может заключаться причина?

Разработчикам важно понимать не только, как подключить javascript файл к html, но также то, что загрузка сценариев влияет непосредственно на характеристики производительности. Приведем пример – картинки на веб-страничке практически не оказывают влияние на данную метрику (временной период до отображения интерактивности), поскольку они не осуществляют блокировку подгрузки компонентов интерфейса. Но скрипты в такой ситуации находятся именно на критическом пути рендеринга. По этой причине запрещено неограниченно увеличивать численность скриптов на веб-ресурсе.

Пользователи могут загрузить страничку с собственного ноутбука, персонального компьютера, но лица, использующие мобильное устройство, не смогут выполнить это максимально быстро и, как следствие, покинут сервис.

Как оптимизировать JS на страничке?

Существует несколько способов оптимизации JavaScript на web-страничке. В процессе добавления скриптов на веб-сайт потребуется обратить внимание на разнообразные характеристики, например, бюджет. Важно понимать, что у абсолютно всех страничек есть собственный бюджет по количеству скриптов и временному промежутку. Для оптимальной загрузки сервиса на смартфонах профессионалы рекомендуют удерживать этот показатель на уровне 200 кб сжатых скриптов. Это предоставит возможность распаковать больше, чем 1 Мб кода для веб-браузера.

Еще один важный параметр – порядок исполнения. Программное обеспечение для серфинга в интернете отображает пользователю страницу, начиная сверху вниз, при этом создавая DOM-компоненты по мере того, как происходит продвижение по html-файлу. Если разработчик поместит теги в конце документа, JS будут открыты в самый последний момент. Как результат, это не сильно окажет влияние на критический путь рендеринга.

И, соответственно, наоборот, при размещении тега в самом начале странички, браузер будет выполнять данный сценарий в первую очередь, а потом отобразит оставшуюся часть информации. Это и есть одна из ключевых причин, почему загрузка выполняется максимально медленно и с некоторыми проблемами. По этой причине рекомендуется переносить расположение некритичных скриптов в самый конец странички (реклама, аналитические инструменты, счетчики, другие подобные).

Еще один вариант оптимизации процесса – асинхронная загрузка. Это более правильный метод решения проблем с отображением «медленных» сторонних сценариев. Использование атрибута async предоставляет возможность браузеру не дожидаться загрузки, выполнения указанных скриптов для отображения остальных компонентов странички.

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

Подведение итогов

В этой статье были рассмотрены все основные способы подключения JS-файлов к документам html. Использование данных методик предоставляет возможность интегрировать различные сценарии на веб-странички, что позволяет собственникам вести аналитику, контролировать количество кликов пользователей на сайте, выполнять иные задачи.

Оптимизация JavaScript является важным инструментом, который предоставляет возможность реализовать необходимые задумки, не утяжеляя сайт и не заставляя пользователей ждать длительное время его загрузку. Комплексный подход поможет разрабатывать веб-ресурсы, интегрируя в них JS без негативных последствий для целевой аудитории, ее пребывания на сайте.

Оцените статью
(1 оценок) 5 / 5
Читать предыдущую статью
Читать следующую статью
Заполни форму и получи грант на обучение