Faire co-habiter jQuery et Mootools

Je me suis de nouveau ré-intéressé aux mécanismes qu’offre Ajax et cela m’a mené à tester quelques scripts utilisant des bibliothèques Javascript tel que jQuery et Mootools. Pour un projet j’ai récupéré deux scripts et c’est alors que je me suis rendu compte de la possibilité de conflit. On peut trouver quelques informations sur Google à ce propos.

L’astuce consiste à utiliser le mode noConflict() de jQuery qui permet de rédéfinir son namespace et d’ainsi laisser une autre bibliothèque utiliser le $. En pratique, il s’agit d’englober toute fonction jQuery de la manière suivante:

jQuery.noConflict();

(function($){
$(document).ready(function(){
	/* The following code is executed once the DOM is loaded */
	                
	/* This flag will prevent multiple comment submits: */
	var working = false;
				
	/* Listening for the submit event of the form: */
	$('#addCommentForm').submit(function(e){ ...

				... $.each(msg.errors,function(k,v){
                    var obj = document.getElementById("error");
                    obj.innerHTML = v;
					//$('label[for='+k+']').append(''+v+'');
				});
			}
		},'json');

	});
})(jQuery);

– James Poulson.