DataLife Engine / Решения проблемы jQuery конфликта c Mootools

Решения проблемы jQuery конфликта c Mootools

Решения проблемы jQuery конфликта c Mootools

Часто в шаблонах dle не работают скрипты, слайдер или другие функции, если присутствует библиотека Mootools, происходит проблема конфликт jQuery библиотеки c Mootools. При подключении первой начинает выбивать ошибки (спасибо IE8, опера на конфликт просто не обратила внимания), и, думаю, работать будет через раз, как повезет.

Лучше использовать какую-нибудь одну библиотеку. Да и вообще - Mootools многие вещи позволяет так же реализовать плюс размер меньше... Но если уж так неохота сидеть, перегонять jQuery'вский скрипт на Mootools, заодно и повыкидывать лишние килобайты, и если jQuery кода относительно мало , то решение этой проблемы можно найти в этой статье.
Решения проблемы jQuery конфликта c Mootools на Dle
1. Для это обязательно библиотеки должны быть выше всех скриптов!
Библиотека Mootools должна быть выше библиотеки jQuery и мы получаем что то вроде этого:
Общий вид:

<script type="text/javascript" src="/js/mootools.js"></script><script type="text/javascript" src="/js/jquery.js"></script>


Для тех у кого DLE:

<script type="text/javascript" src="/templates/Default/js/mootools.js"></script>{headers}


Маленький пример изменения:

<script type="text/javascript">jQuery.noConflict();</script>


Для это берем все знаки доллара $ и заменяем на jQuery. То есть если у нас была такая функция:

$(document).ready(function(){$("#idv p.testclass").click(function(){ /* .... */ }}


после замены будет выглядеть:

jQuery.noConflict();jQuery(document).ready(function(){ jQuery("#idv p.testclass").click(function() { /* .... */ }}


Расширенный пример изменения скрипта.
До:

 Показать / Скрыть текст


После:
 Показать / Скрыть текст


В целом у нас получился такой код в шаблоне:
 Показать / Скрыть текст


Вот собственно и все.

Предлагаем на сайте dle https://dle9.com/ решения проблемы jQuery конфликта c Mootools

druzhim-jquery-c-mootools.zip [5,42 Kb] (cкачиваний: 70)
13-12-2011, 15:34
Вернуться назад