Diaporama en JS
Résolu
Yaninho
Messages postés
530
Statut
Membre
-
jeangilles Messages postés 816 Date d'inscription Statut Membre Dernière intervention -
jeangilles Messages postés 816 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je suis en train de créer un diaporama en Javascript. En statique (avec les chemins des images en dur pas de soucis...). Mais dès que je veux passer en dynamique, c'est la galère.
Alors voici l'appel du script :
Et voici le script :
Le problème étant que les images ne sont pas récupérées alors que les chemins sont bons, je pense que c'est les http:// qu'il voit comme un début de commentaires, mais j'ai déjà essayé plusieurs choses pour y remédier mais sans succès. Je débug avec Firebug et j'ai cette erreur:
missing ) after argument list
ChangeImage(76, http://www.saint-vaast-immobilier.com/images/no_image.gif, http://www.saint-vaast-immobilier.com/images/no_image.gif, http://www.saint-vaast-immobilier.com/images/no_image.gif, http://www.saint-vaast-immobilier.com/images/no_image.gif);
Si vous pouviez m'aider, ça serait cool ;)
--
Fier d'être Normand!
95% of bugs are between keyborad & chair
Je suis en train de créer un diaporama en Javascript. En statique (avec les chemins des images en dur pas de soucis...). Mais dès que je veux passer en dynamique, c'est la galère.
Alors voici l'appel du script :
<div id="zone<?php echo $i; ?>"> <script>ChangeImage(<?php echo $i; ?>, <?php echo $img1path; ?>, <?php echo $img2path; ?>, <?php echo $img3path; ?>, <?php echo $img4path; ?>);</script> </div>
Et voici le script :
<script type="text/javascript">
<!--
num = 0;
function ChangeImage(id, img1, img2, img3, img4)
{
var couv = new Array(Array);
couv[id][0] = img1;
couv[id][1] = img2;
couv[id][2] = img3;
couv[id][3] = img4;
if (num == -1)
{
num = (couv.length-1);
}
if(document.getElementById)
{
document.getElementById("zone"+id).innerHTML =couv[id][num];
num = num+1;
if(num == 4)
{
num = 0;
}
}
setTimeout("ChangeImage("+id+")", 2000);
}
// -->
</script>
Le problème étant que les images ne sont pas récupérées alors que les chemins sont bons, je pense que c'est les http:// qu'il voit comme un début de commentaires, mais j'ai déjà essayé plusieurs choses pour y remédier mais sans succès. Je débug avec Firebug et j'ai cette erreur:
missing ) after argument list
ChangeImage(76, http://www.saint-vaast-immobilier.com/images/no_image.gif, http://www.saint-vaast-immobilier.com/images/no_image.gif, http://www.saint-vaast-immobilier.com/images/no_image.gif, http://www.saint-vaast-immobilier.com/images/no_image.gif);
Si vous pouviez m'aider, ça serait cool ;)
--
Fier d'être Normand!
95% of bugs are between keyborad & chair
Configuration: Windows7 RC1 FR Google Chrome Carte Graphique : Nvidia 7300GT Carte Mère : MSI K8N Neo 1,5Go de Ram DDR400 µProcesseur : AMD 64 3200+
7 réponses
-
Il faut que tu rajoutes des ' quand tu passes des chaines de caractères à une fonction js :
<script>ChangeImage('<?php echo $i; ?>', '<?php echo $img1path; ?>', '<?php echo $img2path; ?>', '<?php echo $img3path; ?>', '<?php echo $img4path; ?>');</script> -
ta variable php $i est elle initialisée ?
sinon c'est normale que id soit undefined -
et en faisant :
var couv = new Array(new Array('0','1','2','3'));
parce que le new Array(Array) m'inspire pas trop confiance :S
^^ -
et si tu fais
var couv = new Array();
couv[id] = new Array();
couv[id][0] = img1;
couv[id][1] = img2;
couv[id][2] = img3;
couv[id][3] = img4;-
Bien vu ;) Effectivement je n'ai plus l'erreur sur Firebug.
Mais cela n'affiche toujours pas l'image, j'ai donc voulu faire un alert("Image1 = "+img);
Donc cela "m'alerte" bien, mais bizarrement, en effet, quand je voit bien l'url mais quand je clique sur OK, il y a furtivement un Image1 = undefined qui apparait puis disparait....
-
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
ca viendrait pas de ton setTimeout("ChangeImage("+id+")", 2000); ?
normalement tu passes 5 arguments à ta fonction, et là qu'un seul -
document.getElementById("zone"+id).innerHTML ='<img src="'+couv[id][num]+'">;
ou quelque chose dans le genre ^^ -
De rien :)