Новости Joomla

Вышли релизы Joomla 6.0.3 и Joomla 5.4.3

Релиз Joomla 6.0.3 и Joomla 5.4.3

Проект Joomla рад сообщить о выпуске Joomla 6.0.3 и Joomla 5.4.3. Это релиз исправлений ошибок и улучшений для серии Joomla 6.0 и Joomla 5.4.

👩‍💻 События плагинов и порядок их срабатывания при работе с пользовательскими полями Joomla и использовании FieldsHelper.

👩‍💻 События плагинов и порядок их срабатывания при работе с пользовательскими полями Joomla и использовании FieldsHelper.

В процессе работы с Joomla бывает необходимо работать с пользовательским интерфейсом более тонко, чем обычно. Все формы Joomla состоят из стандартных полей, содержанием, стилем отображения, состоянием (включено/выключено, доступно для редактирования или нет и т.д.) можно управлять с помощью плагинов. Да и для нестандартных проектов хорошей практикой является создание одного системного или нескольких плагинов групп "под проект", в которых храниться весь "нестандарт".

В этой статье описаны все триггеры, которые вызываются через Event Dispatcher из administrator/components/com_fields/src/Helper/FieldsHelper.php, с привязкой к жизненному циклу (порядку этапов работы запроса), аргументам, изменяемым данным и дальнейшему распространению по Joomla. Это поможет вам работать с Joomla свободнее и не опасаясь при этом потерять изменения при очередном обновлении движка.

Подходы, описанные в статье, полезны в тех случаях, когда вы работаете с данными в com_fields - механизме создания и редактирования пользовательских полей ядра Joomla и при использовании FieldsHelper. Многие сторонние компоненты не используют эту возможность, поэтому данная статья будет полезна лишь частично.

🏆 Открыто голосование за Joomla в премии CMS Critic People’s Choice Awards 2025

🏆 Открыто голосование за Joomla в  премии CMS Critic People’s Choice Awards 2025

🗓 Голосование продлится до 27 февраля 2026 года.

👩‍💻 Проголосовать! 👩‍💻

Номинации, в которых можно проголосовать за Joomla:
⭐️ Best Free CMS
⭐️ Best Open Source CMS
⭐️ Best Enterprise CMS

Также в номинации Best e-Commerce Solution участвуют компоненты интернет-магазинов для Joomla:
⭐️ HikaShop
⭐️ Virtuemart

В номинации Best Website Builder оказались:
⭐️ YooTheme
⭐️ SP Page Builder

Что такое CMS Critic Awards?
С 2012 года премия CMS Critic Awards занимает особое место в сообществе систем управления контентом (CMS). Это единственный в своем роде сайт, который составляет рейтинг системы управления контентом и связанных с ними решений на рынке — от малого до крупного и подчеркивает их инновации и услуги.

Каждый год награда CMS Critic Awards присуждается одному победителю в различных отраслевых категориях, таких как: «Лучшая облачная CMS», «Лучший DXP», «Лучшая Headless CMS и других. Затем результаты оглашаются через СМИ вместе с выбором редакции CMS Critic.
В этом году премия вернулась к своим традициям и только TOP-5 движков по количеству номинаций попали в 2-й этап - голосование.

@joomlafeed

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

..С...е...р...ы...й..

  • Захожу иногда
  • 51
  • 110 / 2
Нужна функция или пример как при клике по ссылке показывать скрытый элемент и при повторном клике скрывать снова, подставляя нужный класс или стиль (display:none)

[spoiler title=Подробно]
Появилась идея в визуальном редакторе по умолчанию скрывать панель форматирования, у которой соответственно есть свой класс.
Код: html4strict
<tr class="mceFirst">
   <td class="mceToolbar mceLeft mceFirst mceLast"></td>
</tr>
[/spoiler]
нужно чтоб по умолчанию JS подставлял невидимый класс или стиль, а при клике по ссылке [форматирование], стиль или класс менялся на видимый. В общем нужен самый элементарный эффект спойлера.

*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: [JS] Как менять класс объекта?
« Ответ #1 : 31.12.2009, 14:32:38 »
на Jquery вообще легко, за 5 минут пишется, по клику делаем AddClass с display: hidden и навешиваем событие hide(slow) на клик обратно - убираем класс RemoveClass и опять же эффект плавного появления
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

era

  • Администратор
  • 1588
  • 392 / 5
  • В туалете лучше быть пользователем, чем админом.
Re: [JS] Как менять класс объекта?
« Ответ #2 : 31.12.2009, 14:32:55 »
элемент, на который будут кликать - вызывает JS-функцию "CourseDisplay":
Код
<div id="cimg_4" class="jscTreeImg" name="cimg_4">
<img border="0" align="absmiddle" src="/modules/mod_jsc_tree/images/kat_act.png" onclick="CourseDisplay(4); return false;"/>
</div>

сам элемент, который скрывать:
Код
<div id="subcat_4" class="jscTreeAct" name="subcat_4">
Тут текст
</div>

JS, подменяет класс у DIV'а (в одном классе он скрытый, в другом видимый) + подменяет картинку (плюсик/минусик например) (в первом ):
Код
<script type="text/javascript" language="JavaScript">
function CourseDisplay(id) {
d  = document.getElementById('subcat_'+id);
im = document.getElementById('cimg_'+id);
if (d.className == "jscTreeNoAct"){
d.className = "jscTreeAct"
im.innerHTML = '<img onclick="CourseDisplay('+id+'); return false;" border="0" src="/modules/mod_jsc_tree/images/kat_act.png" align="absmiddle">';
} else {
d.className = "jscTreeNoAct"
im.innerHTML = '<img onclick="CourseDisplay('+id+'); return false;" border="0" src="/modules/mod_jsc_tree/images/kat_noact.png" align="absmiddle">';
}
};
</script>

пример CSS для скрытых видимых:
Код
div.jscTreeAct {
  display:block;
  margin-top:0;
  padding:0 0 0 15px;
  width:90%;
}

div.jscTreeNoAct {
 display:none;
 margin-top:0;
 padding:0 0 0 15px;
 width:100%;
}
*

..С...е...р...ы...й..

  • Захожу иногда
  • 51
  • 110 / 2
Re: [JS] Как менять класс объекта?
« Ответ #3 : 01.01.2010, 17:33:03 »
пришлось немного помаяться и доработать эту функцию под конкретно TinyMCE.

CSS:

<style type="text/css">
<!--
#comment_tbl{height:auto !important}      /* фикс: превращает фиксированную высоту таблицы редактора в нормальную */
tr.mceFirst{display:none}            /* скрывает панель форматирования по умолчанию, раньше чем срабатывает скрипт  */
.jscTreeAct{display:block !important}
.jscTreeNoAct{display:none}
-->
</style>



JavaScript:

<script type="text/javascript">
function CourseDisplay() {
   d  = document.getElementById('comment_tbl').getElementsByTagName('TR')[0];    // получает адрес нужной строки по ID таблицы и порядковому расположению строки
   im = document.getElementById('editor_exp');    // получает доступ к ссылке раскрытия спойлера по ID
   if (d.className == "mceFirst jscTreeAct"){
      d.className = "mceFirst jscTreeNoAct"
      im.innerHTML = 'Форматирование';
   } else {
      d.className = "mceFirst jscTreeAct"
      im.innerHTML = 'Свернуть форматирование';
   }
}
</script>



элемент, на который будут кликать - вызывает JS-функцию "CourseDisplay":

<a href="#" id="editor_exp" onclick="CourseDisplay(); return false;">[Форматирование]</a>



сам элемент, который нужно скрывать динамичный, то есть он генерируется непосредственно самим JavaScript редактора, по этому его нельзя увидеть статично в шаблонеформы, только в фаербаге, например, и выглядит этот код примерно так:

<table id="comment_tbl" class="mceLayout">
  <tr class="mceFirst">
      <td class="mceToolbar">  </td>
   </tr>

   <tr class="mceLast">
      <td class="mceIframeContainer>  </td>
   </tr>
</table>
« Последнее редактирование: 01.01.2010, 18:31:13 от С.е.р.ы.й.В.о.л.к »
*

mayra

  • Захожу иногда
  • 52
  • 0 / 5
Re: [JS] Как менять класс объекта?
« Ответ #4 : 04.07.2010, 10:00:31 »
Ребята, подскажите рецептик. Вопщем нужно, чтобы при наведении мыши в нужном месте отображалась картинка-линк. Или подскажите хотябы в каком редакторе это лучше и проще сделать. спасибо.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

[РЕШЕНО] Добавить класс при условии JS?

Автор warlocksp

Ответов: 21
Просмотров: 3076
Последний ответ 26.02.2020, 11:07:53
от robert