Salut a tous,

Je suis entrain de créer une animation avec javascript.

J'ai 5 éléments (div) et je veux afficher que 3 éléments aléatoire par chaque interval;
j'ai réussi dans cette etape.

Maintenant je veux dans chaque interval, prend l'un des deux (div) et remplacer l'un des 3 éléments.

exemple :
-1er foit -> afficher les 3 éléments(x,y,z) et cacher les deux(a,b) .
-2eme foit -> afficher les 3 éléments(x,y,a) et cacher les deux(z,b) c'est a dir remplacer (a par z) aléatoire.
-3eme foit -> afficher les 3 éléments(x,z,a) et cacher les deux(y,b) c'est a dir remplacer (y par z) aléatoire.
-4eme foit -> afficher les 3 éléments(b,z,a) et cacher les deux(y,x) c'est a dir remplacer (x par b) aléatoire.

tous ces position sont aleatoire.
voila mon code :
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
38
 
	function alia(){	
 
		function isInArray(val, arr){
						for(var i = 0; i < arr.length; i++){
							if(arr[i] == val) return true;
						}
						return false;
					}
 
		var 	divs = ['#slider1','#slider2','#slider3','#slider4','#slider5'],
					toCach = 2,//cacher deux elements
					shown = [];//afficher le reste
 
				while(toCach > 0){
					var randItem = '';
					while(isInArray(randItem, shown) || randItem  === ''){
						randItem = divs[Math.floor(Math.random() * divs.length)];
					}
					var tin = shown[shown.length] = randItem;
					toCach--;
					//alert(tin);
 
					$(tin).show(function(){
						$(tin).fadeIn(500);//afficher les element aleatoire
						// alert(this)
						$(this).fadeOut(500);//cacher deux elements (toCach)
						// alert($(tin,tin))
					});
				}
 
	}
 
// alert(shown[0]);
// alert(shown[1]);
// alert(shown[2]); 
 
setInterval(function(){ alia(); },4000);