Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript > Bibliothèques & Frameworks > jQuery
jQuery Forum d'entraide sur le framework jQuery. Avant de poster : Tutoriels jQuery, FAQ jQuery, Tous les tutoriels JavaScript, Toutes les FAQ JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 17/04/2011, 17h34   #1
Invité de passage
 
Inscription : novembre 2010
Messages : 10
Détails du profil
Informations forums :
Inscription : novembre 2010
Messages : 10
Points : 0
Points : 0
Par défaut Comment utiliser jQuery.noConflict ?

Bonjour à tous,

Je suis en train de faire une page contenant à la fois :
- un diapo d'images codaslider
- un formulaire de contact qui se valide sans recharger la page
Et cette cohabitation ne fonctionne pas.

Je me retrouve donc avec les appels suivants dans mon <head> :

Code :
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
<!-- Slider -->		
<script type="text/javascript" src="js/slider/jquery-1.2.6.min.js"></script>
<script type="text/javascript" src="js/slider/jquery-easing-1.3.pack.js"></script>
<script type="text/javascript" src="js/slider/jquery-easing-compatibility.1.2.pack.js"></script>
<script type="text/javascript" src="js/slider/coda-slider.1.1.1.pack.js"></script>
<script type="text/javascript">
 
		var theInt = null;
		var $crosslink, $navthumb;
		var curclicked = 0;
 
		theInterval = function(cur){
			clearInterval(theInt);
 
			if( typeof cur != 'undefined' )
				curclicked = cur;
 
			$crosslink.removeClass("active-thumb");
			$navthumb.eq(curclicked).parent().addClass("active-thumb");
				$(".stripNav ul li a").eq(curclicked).trigger('click');
 
			theInt = setInterval(function(){
				$crosslink.removeClass("active-thumb");
				$navthumb.eq(curclicked).parent().addClass("active-thumb");
				$(".stripNav ul li a").eq(curclicked).trigger('click');
				curclicked++;
				if( 6 == curclicked )
					curclicked = 0;
 
			}, 3000);
		};
 
		$(function(){
 
			$("#main-photo-slider").codaSlider();
 
			$navthumb = $(".nav-thumb");
			$crosslink = $(".cross-link");
 
			$navthumb
			.click(function() {
				var $this = $(this);
				theInterval($this.parent().attr('href').slice(1) - 1);
				return false;
			});
 
			theInterval();
		});
	</script>
	<!-- /Slider -->
 
<!-- Form -->
<script src="js/form/jquery-1.2.3.pack.js" type="text/javascript"></script>
<script src="js/form/runonload.js" type="text/javascript"></script>
<script src="js/form/tutorial.js" type="text/javascript"></script>
<!-- /Form -->

J'ai vu qu'il existait une fonction jQuery.noConflict (on en parle dans cet article ou encore dans celui-ci)mais je suis une bille en javascript et je ne sais même pas comment intégrer cette fonction au sein de mon code.

Est-ce que je dois tout simplement faire ça ? :

Code :
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
<!-- Form -->
<script src="js/form/jquery-1.2.3.pack.js" type="text/javascript"></script>
<script src="js/form/runonload.js" type="text/javascript"></script>
<script src="js/form/tutorial.js" type="text/javascript"></script>
<!-- /Form -->
<!-- Slider -->		
<script type="text/javascript" src="js/slider/jquery-1.2.6.min.js"></script>
<script type="text/javascript" src="js/slider/jquery-easing-1.3.pack.js"></script>
<script type="text/javascript" src="js/slider/jquery-easing-compatibility.1.2.pack.js"></script>
<script type="text/javascript" src="js/slider/coda-slider.1.1.1.pack.js"></script>
<script type="text/javascript">
 
		jQuery.noConflict();
 
		var theInt = null;
		var $crosslink, $navthumb;
		var curclicked = 0;
 
		theInterval = function(cur){
			clearInterval(theInt);
 
			if( typeof cur != 'undefined' )
				curclicked = cur;
 
			$crosslink.removeClass("active-thumb");
			$navthumb.eq(curclicked).parent().addClass("active-thumb");
				$(".stripNav ul li a").eq(curclicked).trigger('click');
 
			theInt = setInterval(function(){
				$crosslink.removeClass("active-thumb");
				$navthumb.eq(curclicked).parent().addClass("active-thumb");
				$(".stripNav ul li a").eq(curclicked).trigger('click');
				curclicked++;
				if( 6 == curclicked )
					curclicked = 0;
 
			}, 3000);
		};
 
		$(function(){
 
			$("#main-photo-slider").codaSlider();
 
			$navthumb = $(".nav-thumb");
			$crosslink = $(".cross-link");
 
			$navthumb
			.click(function() {
				var $this = $(this);
				theInterval($this.parent().attr('href').slice(1) - 1);
				return false;
			});
 
			theInterval();
		});
	</script>
	<!-- /Slider -->
Je vous remercie d'avance pour votre aide !
imudo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/04/2011, 21h35   #2
Membre confirmé
 
Homme Xavier ZOLEZZI
Étudiant
Inscription : juin 2008
Messages : 135
Détails du profil
Informations personnelles :
Nom : Homme Xavier ZOLEZZI
Âge : 23
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 135
Points : 224
Points : 224
Enfaite jQuery.noConflict sert si tu utilises plusieurs framework JavaScript qui utilise le $ comme jquery.

Pour une fois que tu as mis ton noConflict au lieu d'utiliser le $(selector) de jQuery il faut que tu utilises jQuery(selector).

http://api.jquery.com/jQuery.noConflict/
__________________
Afin d'améliorer la qualité des forums pensez à marquer en lorsque le problème est clôturé.
Mais aussi d'indiquer les messages utiles [pouce vert] pour que les personnes ayant le même problème trouvent rapidement leur réponse.

Réalisation : http://www.batifac.com
x-zolezzi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/04/2011, 21h45   #3
Invité de passage
 
Inscription : novembre 2010
Messages : 10
Détails du profil
Informations forums :
Inscription : novembre 2010
Messages : 10
Points : 0
Points : 0
Citation:
Envoyé par x-zolezzi Voir le message
Enfaite jQuery.noConflict sert si tu utilises plusieurs framework JavaScript qui utilise le $ comme jquery.
Comment le savoir ? Aller regarder le code que je trouve sur les fichiers
appelés par le Form ?

Citation:
Envoyé par x-zolezzi Voir le message
Pour une fois que tu as mis ton noConflict au lieu d'utiliser le $(selector) de jQuery il faut que tu utilises jQuery(selector).
http://api.jquery.com/jQuery.noConflict/
Je ne comprends pas tout :/
Possible de m'expliquer autrement ?
imudo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/04/2011, 22h07   #4
Membre confirmé
 
Homme Xavier ZOLEZZI
Étudiant
Inscription : juin 2008
Messages : 135
Détails du profil
Informations personnelles :
Nom : Homme Xavier ZOLEZZI
Âge : 23
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 135
Points : 224
Points : 224
Un framework, pour faire simple, c'est un regroupement de fonctions pour te simplifier le code. JQuery en est un. Si par exemple tu utilises jQuery et Mootools, qui sont 2 frameworks JavaScript qui utilisent le $, il va y avoir un conflit. Donc dans ce cas-là il faut utiliser le noConflict.
Il me sembla que dans ton cas tu n'utilises que jQuery, donc le noConflict ne te sert à rien.

Mais si tu veux t'en servir, il faut simplement mettre la ligne jQuery.noConflict(); et ensuite, pour utiliser jQuery, au lieu de faire $...... tu écris jQuery.........
__________________
Afin d'améliorer la qualité des forums pensez à marquer en lorsque le problème est clôturé.
Mais aussi d'indiquer les messages utiles [pouce vert] pour que les personnes ayant le même problème trouvent rapidement leur réponse.

Réalisation : http://www.batifac.com
x-zolezzi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/04/2011, 08h23   #5
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 806
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 13 806
Points : 35 803
Points : 35 803
Pourquoi tu charges 2 versions de jQuery ?
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/04/2011, 19h22   #6
Invité de passage
 
Inscription : novembre 2010
Messages : 10
Détails du profil
Informations forums :
Inscription : novembre 2010
Messages : 10
Points : 0
Points : 0
Citation:
Envoyé par Bovino Voir le message
Pourquoi tu charges 2 versions de jQuery ?
Parce que c'est le code fourni avec mon Form et mon Diapo.
Si je retire l'un ou l'autre, y'en a un des 2 qui ne fonctionne pas :/

Une idée ?
imudo est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h50.


 
 
 
 
Partenaires

Hébergement Web