Bonjour,
Je rencontre un problème sur ce script ; la solution ne doit pas être très compliqué mais le JS n'est pas vraiment mon domaine de prédilection..
J'ai un div, et une fonction pour charger un background avec une image. Au chargement de la page j'appelle la fonction avec le paramètre "alea", qui choisi un nom aléatoire entre 1 et 20 et charge l'image correspondante..
Je voudrais faire en sort que le num de l'image alors chargé reste en mémoir dans une variable,de manière à pouvoir appeler la même fonction, mais avec un parametre "next" ou "back" pour revenir en arriére ou en avant dans la liste des images.
Si le num de l'image actuel arrive a être égal avec le nombre total d'image dispo, on recommence à zero;
Voila le code, qui ne fonctionne pas (seul la première image se charge bien, mais je ne m'en sors pas avec l'itteration et la variable de num de l'image)
et les appeles de la fonctions :
merci d'avance pour votre aide ....
Je rencontre un problème sur ce script ; la solution ne doit pas être très compliqué mais le JS n'est pas vraiment mon domaine de prédilection..
J'ai un div, et une fonction pour charger un background avec une image. Au chargement de la page j'appelle la fonction avec le paramètre "alea", qui choisi un nom aléatoire entre 1 et 20 et charge l'image correspondante..
Je voudrais faire en sort que le num de l'image alors chargé reste en mémoir dans une variable,de manière à pouvoir appeler la même fonction, mais avec un parametre "next" ou "back" pour revenir en arriére ou en avant dans la liste des images.
Si le num de l'image actuel arrive a être égal avec le nombre total d'image dispo, on recommence à zero;
Voila le code, qui ne fonctionne pas (seul la première image se charge bien, mais je ne m'en sors pas avec l'itteration et la variable de num de l'image)

var nbimg = 20;
function rand(min, max) {
var argc = arguments.length;
if (argc === 0) {
min = 0;
max = 2147483647;
}
else if (argc === 1) {
throw new Error('Warning: rand() expects exactly 2 parameters, 1 given');
}
return Math.floor(Math.random() * (max - min + 1)) + min;
}
function loadBackgroundAleatory(nom,cible,val) {
if(no) { alert(no); if(no == nbimg){ var no = 1; } }
if(val == 'next'){
no++; alert(val+no);
document.getElementById(cible).style.background = "url(<?php echo $racinehtml; ?>content/visitegalilee/"+nom+"/"+no+".jpg)";
return no;
}
else if(val == 'back') {
no = no - 1;alert(val+no);
document.getElementById(cible).style.background = "url(<?php echo $racinehtml; ?>content/visitegalilee/"+nom+"/"+no+".jpg)";
return no;
}
else if(val == 'alea') {
var no = rand(1,nbimg);alert(val+no);
document.getElementById(cible).style.background = "url(<?php echo $racinehtml; ?>content/visitegalilee/"+nom+"/"+no+".jpg)";
return no;
}
}
et les appeles de la fonctions :
<div id="mozmain">
<div id="moz">
</div>
<div id="optionsmoz">
<!--<a onClick="close('moz')"><img src="<?php echo $racinehtml; ?>/content/visitegalilee/croix.png" class="noborder" />-->
<a onClick="loadBackgroundAleatory('bg','mozmain','next')"><img src="<?php echo $racinehtml; ?>/content/visitegalilee/flechedroite.png" class="noborder" /></a>
</div>
</div>
<script type="text/javascript">loadBackgroundAleatory('bg','mozmain', 'alea')</script>
merci d'avance pour votre aide ....
