• HTML
  • JavaScript

Почему не работают скрипты при перемещении их вниз страницы?

Доброго дня! Подскажите в чем может быть проблема. На странице путь к встроенным скриптам script src="где находится" прописан в <head>.

Но как известно это не есть хорошо, при расположении их перед закрывающим </body> многие перестают функционировать. Например, slick.js. Библиотека jQuery расположена самой первой в списке.

Что можно придумать и как эту проблему решить?

В самом начале, в <head> - все ок. Все работает как надо.

Ответы: 3

Аноним
Аноним

Спасибо, Александр! Как раз с зависимостями и была проблема, как Вы и писали выше, ну и плюс маленькая недоработка - пути не везде правильно прописал.

P.S Эх, Ваш сайт буквально просит полноценный форум! Так хоть с другими пользователями можно обменяться мнениями. Вижу ваш сайт востребован. Я, например практически к нему и обращаюсь, если что подзабыл. Он как справочник, в закладках)))

Аноним
Аноним

Доброго! Чтобы решить эту проблему, скрипты необходимо подключать в соответствии с их зависимостями.

Например, если вы используете Bootstrap, то сначала необходимо подключить jQuery, т.к. он от него зависит. А, скрипты, которые уже зависят от Bootstrap, вы должны подключить после него.

Но, если вы используете CMS, то в них обычно имеются объекты (компоненты или дополнения), которые могут самостоятельно регистрировать CSS и JS на странице. Они могут быть написаны так, что регистрацию js-файлов они осуществляют в разделе <head>. А этот js-файл может быть написан с использованием jQuery. И если вы перенесёте подключение jQuery вниз (перед закрывающим тегом <\body>), то появятся ошибки, т.к. эти скрипты без jQuery работать не могут. Тут либо разбираться с этими дополнениями, либо подключать, например, jQuery вверху.

Аноним
Аноним

Глупый вопрос задал, разобрался! В общем у кого подобные проблемы – F12 в хроме и станет ясно в чем проблема.