0 Пользователей и 1 Гость просматривают эту тему.
  • 40 Ответов
  • 23990 Просмотров
*

orsy

  • Захожу иногда
  • 400
  • 23 / 1
  • Web-Factor Ukraine
Re: Порядок загрузки скриптов
« Ответ #30 : 06.10.2015, 14:39:59 »
Столкнулся с проблемой порядка загрузки скриптов в 3.4.1

Проблему решил следующим образом:

1. JHtml::_('jquery.framework');
2. $document->addScript(JURI::base().'components'.DS.'com_componentname'.DS.'assets'.DS.'js'.DS.'jquery.jqGrid.js');

Строчка №1 решила проблему, теперь jquery грузится первым

создавал модуль в котором нужно подключать плагины jQuery. Модуль нормально работал если его на вставить в материал плагином. Как только модуль оказывался в материале, плагины jQury подключались до джумловских, а так как они уже оказывались подключенными еще до включения джумловского jquery то после его подключения они уже не подключались.

И вот описанный в цитате способ реально решает, теперь все пашет как надо ) СПАСИБО!
*

Serebro2009

  • Захожу иногда
  • 125
  • 0 / 0
Re: Порядок загрузки скриптов
« Ответ #31 : 18.10.2015, 23:38:11 »
Такая же ситуация, модуль вставленный в материалы - не пашет...из-за того, что JQ подключается позже. Куда нужно прописать строчку?:
1. JHtml::_('jquery.framework');
*

Serebro2009

  • Захожу иногда
  • 125
  • 0 / 0
Re: Порядок загрузки скриптов
« Ответ #32 : 18.10.2015, 23:51:34 »
 -  JHtml::_('jquery.framework'); Добавлен...проблема не решена

Как быть? Почему такая ситуация?
*

orsy

  • Захожу иногда
  • 400
  • 23 / 1
  • Web-Factor Ukraine
Re: Порядок загрузки скриптов
« Ответ #33 : 19.10.2015, 14:12:28 »
у меня файл шаблона вывода модуля начинается вот так:

Код
<?php defined('_JEXEC') or die;

$document = JFactory::getDocument();

JHTML::stylesheet('modules/' . $module->module . '/style/'.$colorcat.'/style.css'); //подключение стилей
JHtml::_('jquery.framework'); //заветная решающая строка

$document->addScript("https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"); //подключение библиотек
...
*

Roinmana

  • Захожу иногда
  • 108
  • 2 / 0
Re: Порядок загрузки скриптов
« Ответ #34 : 03.03.2016, 22:07:13 »
Код
<?php JHtml::_('jquery.framework'); 
Проблема в том, что куда не вставлю эту строку, скрипты загружаются в head. Как заставить их грузиться именно в место где вставлена строка? Например, если я добавлю этот код в шаблон футера, то там они должны и появиться, а не в head.
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: Порядок загрузки скриптов
« Ответ #35 : 04.03.2016, 01:03:39 »
А зачем грузить библиотеки в body (тем более в футер)? Вы понимаете, что остальные скрипты что их используют будут вызывать ошибки. Одна такая ошибка и все остальные ваши скрипты на странице окажутся нерабочими. Мне бы захотелось руки оторвать человеку который запихнул jquery в футер, если бы столкнулся с подобной проблемой.
« Последнее редактирование: 04.03.2016, 01:26:14 от zomby6888 »
интернет-блог: http://websiteprog.ru
*

Roinmana

  • Захожу иногда
  • 108
  • 2 / 0
Re: Порядок загрузки скриптов
« Ответ #36 : 04.03.2016, 08:39:04 »
А зачем грузить библиотеки в body (тем более в футер)? Вы понимаете, что остальные скрипты что их используют будут вызывать ошибки. Одна такая ошибка и все остальные ваши скрипты на странице окажутся нерабочими. Мне бы захотелось руки оторвать человеку который запихнул jquery в футер, если бы столкнулся с подобной проблемой.
Это понятно, но на конкретном сайте нужных "верхних" скрипта всего два, их грузят компоненты подписки и комментариев и один из них прекрасно загружается асинхронно. Остальным (украшательства и доп. функционал код которого прописан в самом конце) в head делать нечего, только тормозят загрузку страницы, поэтому возникла такая необходимость. Как это реализовать?
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: Порядок загрузки скриптов
« Ответ #37 : 04.03.2016, 09:35:03 »
Сжатый jquery, который грузится в head практически не тормозит загрузку страницы. Если хотите оптимизировать скорость загрузки страницы то стоило бы на другие вещи внимание обратить. Тем не менее, если вы такой маньяк то пишите плагин или возьмите какой нибудь готовый, который уберет все скрипты из head. А те скрипты что хотите в футер воткнуть подключайте вручную.  Фореймворк Joomla грузит скрипты только в head. Ну и имейте ввиду что если кому то после всех этих ваших действий понадобится кастомизировать этот сайт, добавить скриптик там какой нибудь то он будет вам очень благодарен за вашу находчивость ;D
« Последнее редактирование: 04.03.2016, 09:42:46 от zomby6888 »
интернет-блог: http://websiteprog.ru
*

LadaDed

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Re: Порядок загрузки скриптов
« Ответ #38 : 03.12.2016, 08:17:34 »
Да, вот тоже оказалась та-же ситуация.. Думал, что все скрипты прописаны где-то в базе данных, и там просто можно поменять их очередность или вообще добавить-удалить. Но не нашел в какой таблице..
Приходится вызов своего js писать просто руками в index.php чтобы он вызывался после вызова jQuery
*

rsn

  • Давно я тут
  • 520
  • 34 / 3
Re: Порядок загрузки скриптов
« Ответ #39 : 01.09.2017, 12:06:02 »
Проблему решил следующим образом:

1. JHtml::_('jquery.framework');
2. $document->addScript(JURI::base().'components'.DS.'com_componentname'.DS.'assets'.DS.'js'.DS.'jquery.jqGrid.js');

Строчка №1 решила проблему, теперь jquery грузится первым

Спасибо за наводку, jitendra. Вопрос и для меня решён.
Немного переоформил для тех случаев, когда $document не определена:

Код
JHtml::_('jquery.framework'); // Это чтобы сначала шёл сам jQuery
JFactory::getDocument()->addScript(JUri::base().'test/jquery.cookie.js');

То есть просто перед тем, как вставлять свой скрипт с помощью API, добавляем выше JHtml::_('jquery.framework');
Протестировал на Joomla 3.7.5. Всё отлично.
Порядок для самой jQuery не поменялся. А вот добавленный мной скрипт jquery.cookie.js теперь стал ниже. Причём не сразу после библиотеки jQuery, а ниже noconflict и migrate.
Возможно, будет интересно: Интеграция с Ozon
*

Flexderection

  • Новичок
  • 3
  • 0 / 0
Re: Порядок загрузки скриптов
« Ответ #40 : 08.03.2021, 22:16:54 »
А почему в head а не в footer.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Медиа-менеджер. Размер данного файла слишком велик для загрузки

Автор Veteran

Ответов: 6
Просмотров: 2447
Последний ответ 16.07.2018, 17:22:46
от darya322
Как сделать порядок мета тегов?

Автор Meiir

Ответов: 4
Просмотров: 1444
Последний ответ 11.05.2017, 17:52:33
от vipiusss
Порядок плагинов на странице

Автор intcorp

Ответов: 5
Просмотров: 1659
Последний ответ 26.04.2017, 23:51:10
от UN_Tony
После загрузки на хостинг появилась проблема описанная ниже!

Автор pomogu_chem_smogu

Ответов: 6
Просмотров: 1803
Последний ответ 16.02.2017, 16:29:34
от SeBun
Скорость загрузки сайта

Автор sanni55

Ответов: 4
Просмотров: 936
Последний ответ 06.02.2017, 17:07:13
от sanni55