Недавно начал осваивать JavaScript и не обошёл стороной библиотеку jQuery, которая чудесным образом облегчает труд. Однако так получилось, что на страницах моего проекта присутствовало меню, сделанное при помощи MooTools. Оно перестало правильно работать, т.е. исчезли все скользящие эффекты.

Конфликт mootools jquery

Своими силами исправить не получилось, пошёл гуглить и вот что узнал. Конфликт у них на почве использования символа $. Для решения проблемы необходимо отказаться от использования символа $ на стороне jQuery, что я и сделал.

Привожу пример, который нашёл сам:

<html>
<head>
<script src="mootools.js"></script>
<script src="jquery.js"></script>
<script>
jQuery.noConflict();

// Вызов через jQuery(...)
jQuery(document).ready(function(){
jQuery("div").hide();
});

// Для Mootools оставляем $(...)
$('someid').hide();
</script>
</head>
<body>
...
</body>
</html>

Данный вариант я проверил — всё заработало)

Но есть ещё некоторые возможности добавить удобств в работе с jQuery в режиме noConflict:

<html>
<head>
<script src="mootools.js"></script>
<script src="jquery.js"></script>
<script>
var $j = jQuery.noConflict();
// Вызов через $j(...)
$j(document).ready(function(){
$j("div").hide();
});
// Для Mootools оставляем $(...)
$('someid').hide();
</script>
</head>
<body>
...
</body>
</html>

В общем думаю понятно, вы можете вместо $ использовать любую переменною типа $j или $jq

JavaScript




Смотрите также: