Bonjour à tous !

J'utilise le framework Rico+Prototype depuis quelques années pour gérer la partie Ajax de notre application. Malheureusement, un client a besoin de faire fonctionner jQuery au sein d'une page où il y a déjà prototype et rico inclus.

Lorsque je commente l'inclusion de prototype.js, la partie jQuery fonctionne bien.

Lorsque j'inclus prototype.js, par contre, j'ai quelques erreurs Javascript sur la console de Firebug. Par exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
jQuery(window).bind is not a function
Il semblerait que l'inclusion de prototype empêche de rajouter les fonctions définies vers la ligne 2285 de jQuery.js :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
 
...
 
jQuery.fn.extend({
 
	/** @id jQuery.bind **/
	bind: function( type, data, fn ) {
		return type == "unload" ? this.one(type, data, fn) : this.each(function(){
			jQuery.event.add( this, type, fn || data, fn && data );
		});
	},
 
	/** @id jQuery.one **/
	one: function( type, data, fn ) {
		return this.each(function(){
			jQuery.event.add( this, type, function(event) {
				jQuery(this).unbind(event);
				return (fn || data).apply( this, arguments);
			}, fn && data);
		});
	},
 
	/** @id jQuery.unbind **/
	unbind: function( type, fn ) {
		return this.each(function(){
			jQuery.event.remove( this, type, fn );
		});
	},
 
	/** @id jQuery.trigger **/
	trigger: function( type, data, fn ) {
		return this.each(function(){
			jQuery.event.trigger( type, data, this, true, fn );
		});
	},
 
...
Vu mes compétences en Javascript, je ne garantis pas que ce soit ça le problème, mais c'est ce dont j'ai l'impression.

J'avais bien vu qu'il était possible qu'il y ait un problème avec la coexistence de 2 frameworks, mais c'est une hypothèse de travail; Je ne peux pas influer la dessus.
En jetant un oeil sur ce lien : http://docs.jquery.com/Using_jQuery_...ther_Libraries j'ai pu voir qu'il pouvait y avoir un conflit entre prototype et jQuery car ils définissaient tous deux la méthode "$". Mais mon problème vient encore avant, car dans l'erreur signalée, il n'y a pas de $, et aussi pour la raison suivante : lorsque j'ai ajouté l'appel à noConflict(), j'avais mis un breakpoint (merci Firebug) dans cette méthode. Or l'erreur venait avant que je rentre dans le breapoint. En plus, l'appel à noConflict() est ce que je fais en premier.

Je suis donc un peu perdu, et si quelqu'un saurait me diriger vers une solution praticable pour avoir les 2 frameworks travaillant de pair, ce serait parfait.

En tout cas, merci de votre patience et de votre attention !
Joël.