Bonjour,

Une boite ma demandé de mettre un effet Mac OS x dock pour afficher un menu en image, je l'ai, dans un premier temps, fait sur flash, mais ca compliqué le systeme de mise a jour en cas de changement d'image, car celle ci doit pouvoir etre faite par monsieur tout le monde sans avoir a intervenir dans le code ou l'anime flash.
J'ai donc décidé de me tourner vers JS pour le faire, ne connaissant pas ce langage suffisement pour l'ecrire moi meme, j'ai donc fait une recherche de source sur google. Je trouve enfin mon bonheur, j'insere la source, modifie un petit le code secondaire (non JS) afin de faire une relation avec une base mysql, et quand je test, le code ne me retourne pas d'erreur, les images s'affiches bien, mais je n'est pas l'effet doc et en plus impossible de retravailler la dimension de l'image.

Apres une expliquation un peu longuette ^^, j'en viens a ma demande en clair.

Pourriez vous m'aider à corriger le code pour qu'il fonctionne SVP

je vous remercie d'avance pour votre aide.

Voila les deux parties de code concerné

Code JS : 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
39
40
41
42
43
 
<script language="JavaScript">
<!--
 
MIN = 20 ;  // largeur minimum en pixel
MAX = 115 ; // largeur maximum en pixel
REACTION = 1.2 ; // réaction des icons par rapport à la souris. plus grand --> plus d'icons qui réagissent
 
A = ((MIN-MAX)/(MAX * REACTION)) ; /* coef directeur de la droite agrandissement */
IE = document.all ? 1 : 0 ;
img_tags = new Array();
 
function ouEstMaSouris(e)
{
	var dock = document.getElementById('dock') ; // div qui contient la barre de menu.
 
	var x = 0;
	if (IE)	x = e.clientX ; // coordonnées x de la souris sur IE 5.5
	else	x = e.pageX ;  // coordonnées x de la souris sur Mozilla ou Netscape 7
 
	x -= dock.offsetLeft ; // on modifie la coordonnée pour quelle soit relatif au div et non à la fenetre.
 
	img_tags = dock.getElementsByTagName('img') ; // les images contenus dans le div
 
	for(i=0 ; i<img_tags.length ; i++) // pour chaque images
	{
		millieu = img_tags[i].offsetLeft + parseInt(img_tags[i].style.width)/2 ;
		delta = millieu - x ;
 
		if (delta < 0) delta *= -1 ;
 
		coef = A * delta + MAX ;
 
		if (coef < MIN) coef = MIN ;
		else if (coef > MAX) coef = MAX ;
 
		img_tags[i].style.width=coef;
		img_tags[i].style.height=coef;
	}
}
 
//-->
</script>

Code php : 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
 
<div class="dock" id="dock" onMouseMove="ouEstMaSouris(event)">
<table>
	<tr>
<? 
    include'include/identifiants.php';
 
	mysql_connect($adresse, $nom, $motdepasse);
	mysql_select_db($database);
 
	$retour=mysql_query("SELECT * FROM menu_entreprises ORDER BY id LIMIT 0,5");
 
	while($donnees=mysql_fetch_array($retour))
		{
			echo'<td><a href="'.$donnees['lien'].'" title="'.$donnees['title'].'"><img src="images/menu_entreprises/'.$donnees['image'].'" alt="'.$donnees['alt'].' height="20" /></td>';
		}
 
	echo'</tr><tr>';
 
	$return=mysql_query("SELECT * FROM menu_entreprises ORDER BY id LIMIT 6,10");
 
	while($data=mysql_fetch_array($return))
		{
			echo'<td><a href="'.$data['lien'].'" title="'.$data['title'].'"><img src="images/menu_entreprises/'.$data['image'].'" alt="'.$data['alt'].' height="20" /></td>';
		}
?>
	</tr>
</table>
</div>