1 article pour le tag “ prototype ”

Faire cohabiter jQuery et Prototype ou Mootools

Posé ici le mercredi 13 août 2008 à 02:19 par Jay Salvat

Faire cohabiter jQuery et d'autres librairies

Les librairies telles que Prototype, MooTools ou jQuery (pour ne parler que des plus connues) ont changé la face du web et ont permis au 'Web2.0' de devenir ce qu'il est.

Seulement, toutes ces librairies travaillent sur le même terrain, ce qui rend leur mode de fonctionnement similaire et leur jeu de fonctions souvent incompatible. Par exemple, les trois plus célèbres frameworks Javascript du marché n'arrivent pas à cohabiter en raison de l'utilisation de la fonction $().

Alors que MooTools et Prototype ne semblent pas se soucier du sujet, jQuery propose heureusement un mode noConflit(). Voici un exemple d'utilisation :

Exemple de jQuery.noConflict()
<html>
<head>
<title>Cohabitation jQuery et autres librairies</title>
<script type="text/javascript" src="prototype.js"></script>
<script type="text/javascript" src="jquery.js"></script>
<style type="text/css">
    .jquery {
        color:#FFF;
        background-color:green;	
    }

    .prototype {
        color:#FFF;
        background-color:red;	
    }
</style>
</head>
<body>
    <div id="jquery">Coloré par jQuery</div>
    <div id="prototype">Coloré par Prototype</div>
    <script type="text/javascript">
        // jQuery en action
        jQuery.noConflict();
        jQuery('#jquery').addClass('jquery');
	
        // Prototype en action
        $('prototype').addClassName('prototype');
    </script>
</body>
</html>

Ainsi appelé, jQuery pourra être utilisé par jQuery() au lieu de $(). Notez que l'inclusion de la librairie jQuery se met en dernier. Démarche identique pour MooTools.

Il n'existe pas, à ma connaissance, de solution simple pour faire travailler MooTools avec Prototype.

L'auteur

Jay Salvat

Issu de la presse et de la communication, Jay suit les mutations d’internet depuis plus de 10 ans pour en aborder tous les aspects. Tout d'abord directeur artistique, c'est naturellement que la transition vers le développement s'est effectuée. Jay dirige actuellement le web développement des sociétés montantes du GSM embarqué Kuantic et Dynatik. Il s’investit également dans de multiples projets opensource ou plus personnels tel que MarkItUp!, Sunday Morning ou Colorz.