Есть интересные модули, сделанные с использованием jquery. Но в Joomla по умолчанию используется mootools.
Что делать?
- Можно отключить использование mootools (если не предполагается использование кода с его использованием)
- Использовать jquery совместно с mootools.
Как это сделать (второй вариант), можно посмотреть на сайте jquery: http://api.jquery.com/jQuery.noConflict/
Примеры из описания noConflict:
Во многих библиотеках JavaScript используется $ как функция или название переменной, как и в JQuery. В случае JQuery, $ это просто псевдоним для JQuery, поэтому все функции доступны без использования $. Если нам потребуется использовать другую JavaScript библиотеку совместно с JQuery , мы можем вернуть управление $ обратно в другие библиотеки с помощью $.noConflict ():
<script type="text/javascript" src="other_lib.js"></script> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript"> $.noConflict(); // Здесь может быть код других библиотек, который использует $ </script>
В этом случае для jQuery кода вместо $ используется jQuery
jQuery.noConflict();
// Do something with jQuery
jQuery("div p").hide();
// Do something with another library's $()
$("content").style.display = 'none';
Вместо jQuery можно использовать другое имя:
var j = jQuery.noConflict();
// Do something with jQuery
j("div p").hide();
// Do something with another library's $()
$("content").style.display = 'none';
Так можно использовать код jQuery с $, когда DOM будет загружен:
<script type="text/javascript" src="other_lib.js"></script>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$.noConflict();
jQuery(document).ready(function($) {
// Здесь jQuery's код, с $
});
// Здесь может быть код других библиотек, который использует $
</script>
jQuery с $
jQuery.noConflict();
(function($) {
$(function() {
// more code using $ as alias to jQuery
});
})(jQuery);
// other code using $ as an alias to the other library
и краткая запись jQuery с $:
jQuery.noConflict()(function(){
// code using jQuery
});
// other code using $ as an alias to the other library