#javascript #joomla #joomla-extensions
#javascript #joomla #joomla-расширения
Вопрос:
Привет, у меня проблема с добавлением javascript в модуль joomla..Я нашел какое-то решение, но оно не работает..
$document = amp;JFactory::getDocument();
$document->addScript("/career.js");
Эти две строки у меня есть в моем модуле, но скрипта нет на отрисованном сайте..
Файл находится в корневом каталоге моего веб-сайта (только для целей тестирования).
Спасибо за вашу помощь
Комментарии:
1. При рендеринге страницы вы видите вызов скрипта в заголовке документа?
Ответ №1:
Попробуйте это, это работает отлично.
$document = amp;JFactory::getDocument();
$document->addScript('modules'.DS.'MOD_YOURMODULENAME'.DS.'javascript.js');
Комментарии:
1. В более новых версиях Joomla вы можете использовать косую черту
/
вместо разделителя каталогов JoomlaDS
, например:$document->addScript('modules/MOD_YOURMODULENAME/javascript.js');
Ответ №2:
проверьте источник представления .
скопируйте и вставьте путь к career.js введите URL-адрес браузера и попробуйте получить к нему доступ.
Измените путь по мере необходимости.
. ./ ../
Комментарии:
1. Я попытался получить доступ непосредственно к файлу, и он отобразился правильно.. Но при использовании addScript скрипт отсутствует:(
2. Я думаю, что в случае неправильного URL я найду в результирующем коде тег script с src attr, которому будет присвоено значение, которое я установил??
Ответ №3:
Вы можете использовать следующее расширение (работает как 1.5, так и 1.6), чтобы легко включить пользовательский javascript или HTML.
http://extensions.joomla.org/extensions/edition/custom-code-in-modules/5435
Также, когда вы используете напрямую, можете использовать полный путь, подобный этому (измените путь вашего .JS)
<?php
$document = amp;JFactory::getDocument();
$document->addScript( '/media/system/js/sample.js' );
?>
Комментарии:
1. Я попытался переместить его в эту папку, но безрезультатно.. Тоже пытался вставить другой js-файл из этой папки.. У меня Joomla 1.5, может ли это помочь? Поэтому я попробую расширение, о котором вы писали
2. Итак, модуль работает как-то странно: когда я пишу там js-код, он исчезает при рендеринге, но обычный текст отображается правильно. Я попробовал обе настройки для чистого html и js..
3. у меня такая же проблема, я собираюсь попробовать это сегодня вечером
Ответ №4:
Итак, единственное решение, которое работает для меня, — добавить этот js в шаблон моего сайта..Но это действительно ужасное решение, так как мне это нужно только в одной статье / модуле
Комментарии:
1. я думаю, у нас могут быть разные шаблоны для домашней страницы и внутреннего page.is это возможно
Ответ №5:
Вы также могли бы использовать php-модуль joomlahttp://www.fijiwebdesign.com/products/joomla-php-module.html или, может быть, вы нашли модуль, который лучше соответствует вашим потребностям по адресу: http://extensions.joomla.org/extensions/edition/custom-code-in-modules
Ответ №6:
Ой..Основная проблема заключается в том, что я загружаю страницу, содержащую пользовательский модуль с javascript, загруженный через ajax .. И все плагины, похоже, добавляют код js в head, и я заменяю только некоторые элементы в теле моей страницы. существует какое-то решение этой проблемы?Я знаю, что могу поместить всю логику js в один файл, но я не уверен, что это хороший способ. Возможно ли каким-либо образом включить js непосредственно в модуль?Чтобы тег script был в теле моего документа и был правильно включен (я не уверен, что код будет запущен ??)
Спасибо
Ответ №7:
Убедитесь, что у вас есть это
<jdoc:include type="head" />
после тега head в шаблоне index.php
Ответ №8:
Для всех тех, кто попадает на эту страницу гораздо позже и ищет решение в Joomla 3.x
Вы можете включить модуль типа «Пользовательский HTML Advanced», который не будет отфильтровывать теги скриптов или стилей. Вы можете использовать его на любой из страниц, которые вы хотите.
Надеюсь, это поможет вам 🙂