Фреймворк JavaScript
From Joomla! Documentation
Joomla! CMS включает ряд фреймворков JavaScript. Вы можете воспользоваться этими предварительно созданными библиотеками функций JavaScript вместо того, чтобы включать свой собственный код JavaScript. Фреймворки загружаются с помощью вызывов статичных методов в классе JHtml
.
Фреймворк JavaScript "Twitter Bootstrap"
Для включения фреймворка "Bootstrap" [используйте] вызов JHtml::_('bootstrap.framework')
. Это автоматически задействует фреймворк jQuery в режиме "noConflict" (то есть, к нему будут обращаться через jQuery.
вместо $.
). Эта библиотека "Bootstrap" является версией 2.1.0 и она находится по адресу media/jui/bootstrap.js
. Она включает методы для инициализации плагинов affix, alert, button, carousel, collapse, dropdown, modal, tooltip, popover, scrollspy, tab и typeahead.
ПРИМЕЧАНИЕ: существует известная несовместимость между bootstrap-button
и jquery-ui-button
. Использование обоих на одной и той же веб-странице может привести к конфликтам. Для возможного преодоления [таких конфликтов] познакомтесь с [веб-страницей] [1].
Фреймворк JavaScript "jQuery"
Для загрузки jQuery используйте JHtml::_('jquery.framework');
. При этом библиотека "jQuery" будет загружена в версии 1.11.1, в режиме "no conlict". Это означает, что к ней обращаются через пространственное наименование jQuery
, а не $
.
Для ее загрузки в обычном режиме [используйте] вызов JHtml::_('jquery.framework', false);
.
Фреймворк JavaScript "jQuery UI"
Библиотеки JUX включают код ядра jQuery UI, плюс "Widget", "Mouse", "Position" и "Sortable" (начиная с Joomla 3.0.2 - версия 1.8.23). Для более подробного знакомства с их использованием просмотрите, пожалуйста, jQuery-UI эту документацию.
Для загрузки ядра используйте вызов JHtml::_('jquery.ui');
.
При этом будет загружен надлежащий файл jquery-ui.core.js
из директории media/jui
. Включение "jQuery UI" автоматически включает в "jQuery" режим "noConflict", если он уже не был включен ранее.
Для добавления библиотеки "Sortable" используйте JHtml::_('jquery.ui', array('sortable'));
. При этом будут автоматически включены главная библиотека "jQuery UI" и библиотека "jQuery".
Для ясности, лучше всего включать в одном и том же вызове как главную библиотеку, так и "Sortable" отдельно, используя JHtml::_('jquery.ui', array('core', 'sortable'));
.
Начиная с версии Joomla 3.0.2. устанавливаются/имеются в распоряжении только [библиотеки] "jQuery UI" и "Sortable". Для использования других плагинов "jQuery", включая плагины "jQuery UI", Вам необходимо удостовериться в том, что они устанавливаются вместе с Вашим веб-приложением и для их загрузки вызвать JHtml::_('script')
вместе с надлежащими параметрами. Альтернативно [этому], Вы можете создавать и устанавливать свои собственные расширения JHtml и создавать свои собственные вызовы JHtml, такие как JHtml::_('mylibrary.myloader')
.
Фреймвор JavaScript "Mootools"
Этот фреймворк устарел и в будущих версиях может быть изъят."
Загружает библиотеки "Mootools" из system/js
, JHtml::_('behavior.framework', $type)
где $type
определяет библиотеку.
Ядро: mootools-core.js
, версия 1.4.5
Дополнительно: mootools-more.js
, версия 1.4.0.1, автоматически включает ядро.
Фреймворк JavaScript "Joomla!"
"Многим из библиотек Joomla необходим фреймворк "Mootools". Предполагается что в некоторых будущих версиях они будут мигрированы в фреймворк "Bootstrap"".
Эти библиотеки JavaScript могут быть размещены в папке media/system/js
. Этот список неполон. Для проверки имеющихся в распоряжении библиотек, загляните, пожалуйста, в эту папку. Имеющиеся в распоряжении библиотеки:
caption.js :: JHtml::_('behavior.caption', $selector)
При этом ко всем элементам DOM, у которых имеется CSS класс $selector
, будут применены функции подписи. Классом "selector" по умолчанию является img.caption
. Для того, чтобы применить функцию подписи к нескольким классам, просто содайте несколько вызовов JHtml::_('behavior.caption', $selector)
. Эта библиотека будет загружена только один раз, но она будет применена ко всем классам.
tooltip.js :: JHtml::_('behavior.tooltip', $selector, $params)
Для всех объектов DOM с классом $selector
на базе кода $params
будет создана onhover подсказка. Селектором по умолчанию является hasTip
. Загрузка этого фреймворка также загрузит фраймворк "Mootools".
combobox.js :: JHtml::_('behavior.combobox')
Создает эффект "combobox". Загрузка этого фреймворка также загрузит фреймворк "Mootools".
validate.js :: JHtml::_('behavior.formvalidation')
Включает проверку веб-формы на базе определенных полями формы правил. Загрузка этого фреймворка также загрузит фреймворк "Mootools".
switcher.js :: JHtml::_('behavior.switcher')
Эта библиотека используется внутренне и вряд ли будет полезна для других компонентов. При ее включении она также включает фреймворк "Mootools".
multiselect.js :: JHtml::_('behavior.multiselect')
Поведение JavaScript для того, чтобы разрешить в сетке смену select. Загрузка этого фреймворка также загрузки фреймворк "Mootools".
swf.js :: JHtml::_('behavior.uploader')
progressbar.js :: JHtml::_('behavior.uploader')
uploader.js :: JHtml::_('behavior.uploader')
Ненавязчивая поддержка JavaScript для расширенного загрузчика [файлов].
mootree.js :: JHtml::_('behavior.tree')
Добавить ненавязчивую поддержку для складывающейся древовидной структуры в JavaScript.
Файлов нет JHtml::_('behavior.keepalive')
- не выключать пользовательскую сессию, например, во время редактирования или создания материалов.
Файлов нет JHtml::_('behavior.noframes')
- вывести нас из любого включенного iframes.