MODX - Как перенести подключение jQuery и Bootstrap вниз страницы?

Алексей
Алексей
2,8K
2
Содержание:
  1. Комментарии
Добрый день!

Сайт создан на MODX, на сайте стоит bootstrap 2.4.2 когда ставили сайт страницу html сделали с вызовами по блокам (heat, navbar, footer) бок вызова bootstrap.min.css, bootstrap.min.js, jquery.min.js были размещены в блоке heat, сейчас гугл ругается на загрузку и рекомендует убрать их чердака (heat). Пытался перенести код вызова bootstrap и jquery в подвал (footer) выдает ошибки в index. Подскажите как это правильно сделать?

Комментарии: 2

  1. Александр Мальцев
    Александр Мальцев
    2018-11-15 17:10:13
    Добрый! Это в MODX может случиться, когда, например, вызовы сниппетов, которые вы поместили в шаблон или в контент ресурса, регистрируют при парсинге страницы JavaScript код (js-файлы), написанный на jQuery, в раздел head страницы.

    В этом случае, конечно, при подключении jQuery внизу HTML страницы (перед закрывающим тегом body), сценарии, зарегистрированные в разделе head и написанные на jQuery работать не будут. В результате страница будет функционировать не правильно, и в консоли браузера будут отображаться ошибки.

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

    Например, в сниппетах, регистрация js в head осуществляется так:
    $modx->regClientStartupScript('assets/js/onload.js');
    
    А, регистрация js перед закрывающим тегом body так:
    $modx->regClientScript('assets/js/footer.js');
    
  1. Алексей
    Алексей
    2018-11-15 17:22:08
    Спасибо, Александр!
    Вопрос снялся сам собой после обновления MODX, ну и уже немного доработали.