JQuery et MooTools sans conflit
Plutôt adepte de JQuery, je me retrouve parfois confronté à l’utilisation de JQuery et de MooTools simultanément.
Ceci posera a coup sur des problèmes si l’on n’y prend pas garde du fait des grandes similitudes de notations comme l’appel à la fonction $.
Il existe bien évidement un contournement de ce genre de problèmes que voici :
Tout d’abord il faut respecter l’ordre de déclaration des scripts :
- jquery.js
- Vos autres scripts JQuery
- mootools.js
- Vos autres scripts MooTools
Ensuite il faut dans la partie JQuery commencer par déclarer :
jQuery.noConflict();
Puis penser à remplacer dans tous les scripts JQuery les appels $() par jQuery()
// On remplace par exemple // $(document.body).css('background-color', 'lightblue'); // par : jQuery(document.body).css('background-color', 'lightblue');
Voila si vous n’êtes pas certains d’avoir tout compris je vous propose un exemple super simple illustrant ce qu’il faut faire :
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Test JQuery et MooTools</title>
</head>
<body>
<h1> Ceci est un test </h1>
<!-- // DEBUT SCRIPTS JS -->
<script language="Javascript" type="text/javascript" src="js/jquery.js"></script>
<script language="Javascript" type="text/javascript">
// JQuery
jQuery.noConflict();
jQuery(document.body).css('background-color', 'lightblue');
</script>
<!-- Déclarer MooTools et les scripts MooTools après JQuery et les scripts JQuery -->
<script language="Javascript" type="text/javascript" src="js/mootools.js"></script>
<script language="Javascript" type="text/javascript">
// MooTools
var bodyElement = $(document.body);
bodyElement.setStyle('color', 'darkgreen');
</script>
<!-- // FIN SCRIPTS JS -->
</body>
</html>
septembre 22nd, 2009 at 15 h 39 min
Non de dieu, j’ai passé des heures à me fouiller dans tous les recoins et aucune solution nette et précise SAUF enfin celle-ci !
100 000 merci pour cette note claire et concise !!!!
février 24th, 2010 at 19 h 33 min
Super ça fonctionne à merveille même avec Joomla 1.5.15 merci pour ces explications simples et efficaces…
avril 12th, 2010 at 17 h 21 min
Merci pour cette soluce! Elle m’a beaucoup aidé après des heures de recherches.
avril 14th, 2010 at 19 h 00 min
Superbe solution qui fonctionne très bien.
Merci pour l’info.