Changer le :Math.round(larg/coeff);?????????

Résolu/Fermé
theoelliot Messages postés 329 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 21 octobre 2011 - 20 mars 2007 à 15:28
theoelliot Messages postés 329 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 21 octobre 2011 - 22 mars 2007 à 15:18
Bonjour,

Je suis en train d'essayer de comprendre et d'appliquer un script pour agrandir des photos au survol de la souris. Mais le créateur dit qu'il ne faut pas oublier de changer le : Math.round(larg/coeff).
Pouvez vous m'éclairer?

Je vous joint les scripts :


<script language="JavaScript">
<!--
//PLF-https://twitter.com/ceosammassey
var coeff=4;//Coefficient de reduction
var larg=200;//largeur maxi de l'image
var haut=194;//hauteur maxi de l'image
var coeffinit=coeff;
function changer(sel) {
switch(sel){
case 1 : //image 1
if (document.image1.width < larg) {
coeff = coeff-0.2;
document.image1.width = Math.round(larg/coeff);
document.image1.height = Math.round(haut/coeff);
chang=window.setTimeout('changer(1);',60);//vitesse de l'effet
}
break;
case 2 : //image 2
if (document.image2.width < larg) {
coeff = coeff-0.2;
document.image2.width = Math.round(larg/coeff);
document.image2.height = Math.round(haut/coeff);
chang=window.setTimeout('changer(2);',60);//vitesse de l'effet
}
break;
case 3 : //image 3
if (document.image3.width < larg) {
coeff = coeff-0.2;
document.image3.width = Math.round(larg/coeff);
document.image3.height = Math.round(haut/coeff);
chang=window.setTimeout('changer(3);',60);//vitesse de l'effet
}
break;
//images suivantes ...
}
if (document.image2.width >= larg) window.clearTimeout(chang);
}
function initial(sel) {
switch(sel){
case 1 : //image 1
if (document.image1.width > larg/coeffinit) {
window.clearTimeout(chang);
coeff = coeff+0.2;
document.image1.width = Math.round(larg/coeff);
document.image1.height = Math.round(haut/coeff);
initi=window.setTimeout('initial(1);',60);//vitesse de l'effet
}
break;
case 2 : //image 2
if (document.image2.width > larg/coeffinit) {
window.clearTimeout(chang);
coeff = coeff+0.2;
document.image2.width = Math.round(larg/coeff);
document.image2.height = Math.round(haut/coeff);
initi=window.setTimeout('initial(2);',60);//vitesse de l'effet
}
break;
case 3 : //image 3
if (document.image3.width > larg/coeffinit) {
window.clearTimeout(chang);
coeff = coeff+0.2;
document.image3.width = Math.round(larg/coeff);
document.image3.height = Math.round(haut/coeff);
initi=window.setTimeout('initial(3);',60);//vitesse de l'effet
}
break;
//images suivantes ...
}
if (document.image1.width < larg/4) window.clearTimeout(initi);
}
//-->
</script>

table width="100%" border="0">
<tr align="center">
<td>
<a href="#" onMouseOut="initial(1)" onMouseOver="changer(1)" ><img src="im/imaga.gif" name="image1" border="0"></a>
<script language="JavaScript">
<!--
//PLF-https://twitter.com/ceosammassey
document.image1.width = Math.round(larg/coeff);
document.image1.height = Math.round(haut/coeff);
//-->
</script>
</td><td>
< a href="#" onMouseOut="initial(2)" onMouseOver="changer(2)" ><img src="im/imagc.gif" name="image2" border="0"></a>
<script language="JavaScript">
<!--
document.image2.width = Math.round(larg/coeff);
document.image2.height = Math.round(haut/coeff);
//-->
</script>
</td><td>
< a href="#" onMouseOut="initial(3)" onMouseOver="changer(3)" ><img src="im/imagb.gif" name="image3" border="0"></a>
<script language="JavaScript">
<!--
document.image3.width = Math.round(larg/coeff);
document.image3.height = Math.round(haut/coeff);
//-->
</script>
</td>
</tr>
</table>



Vous pouvez changer le coefficient de réduction.
Indiquez la taille de votre image agrandie.
(Si vous souhaitez des images et des coefficients de tailles différentes pour chaque image. Définissez d'autres variables. ex: coeff1, coeffinit1, haut1, larg1, coeff2, coeffinit2, haut2, larg2, ...
Pensez à changer les variables dans chaque formule Math.round(larg/coeff); et cela dans les 2 scripts.
Vous pouvez changer la vitesse de l'effet.





Merci beaucoup

Elise

Ps pour les réponses, soyez indulgents, utilisez des mots basiques, je suis néophyte de chez néophyte

Grand merci à vous

Cordialement
A voir également:

3 réponses

theoelliot Messages postés 329 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 21 octobre 2011 12
20 mars 2007 à 19:56
Ca ne parle à personne mon problème? Hein???
C'est l'heure de la soupe???

Helpppppppp
J'avais besoin de vos conseils parce que je voulais travailler sur le script cette nuit à mon boulot.

Elise
0
Serge_La Messages postés 407 Date d'inscription lundi 19 mars 2007 Statut Membre Dernière intervention 3 mars 2009 47
21 mars 2007 à 20:48
Haha! Pas de panique. Hé, c'est la nuit chez toi à cette heure!
Les données à changer qui correspondent aux grandeurs réelles des images, sont:
var coeff=4;//Coefficient de reduction
var larg=200;//largeur maxi de l'image
var haut=194;//hauteur maxi de l'image

Ça c'était pour les grandeurs maximales (quand la souris est au dessus) des images
Il semble avoir écrit le code pour une grandeur d'image identique pour toutes les images.

Dans les scripts qui suivent les codes HTML des images, tu dois définir les hauteurs et largeurs des images rapetissées. Evidemment tu devrais garder le rapport hauteur/largeur constant si tu ne veux pas de déformation.

Voilà.
Ça devrait fonctionner.
Serge.
0
theoelliot Messages postés 329 Date d'inscription mercredi 11 mai 2005 Statut Membre Dernière intervention 21 octobre 2011 12
22 mars 2007 à 15:18
Merci beaucoup d'avoir pris le temps de me répondre.
Les choses et surtout le script sont maintenant plus clairs.

Encore merci

Cordialement et bonne fin de journée

ELise
0