Défilement aleatoire de 5 images
Loic
-
bob -
bob -
Bonjour,
Bonjour,
J'aimerai que dans mon site, au niveau de ma banniére composées de 5 image defilent de maniére aléatoire, toutes les 5secondes
alors je suis partis avec ce bout de code mais j'ai pas réussit a l'adapter:
<?php
$repertoire = "image/";
$dir = opendir($repertoire);
$nbIm = 0; //Compteur d'image permettant de les ajouter dans le tableau JS
while($im = readdir($dir)) {
if($im != ".." && $im != ".") {
// Ajout de l'image dans le tableau JS (Bien faire un echo !)
echo "Pix[$nbIm] = '" . $repertoire.$im . "';";
$nbIm++;
}
}
//Toujours tenter de fermer un dossier après une ouverture (même si l'ouverture a manqué)
closedir($dir);
?>
var howMany = Pix.length;
timeDelay *= 1000;
var PicCurrentNum = 0;
var PicCurrent = new Image();
PicCurrent.src = Pix[PicCurrentNum];
function startPix() {
setInterval("slideshow()", timeDelay);
}
function slideshow() {
PicCurrentNum++;
if (PicCurrentNum == howMany) {
PicCurrentNum = 0;
}
PicCurrent.src = Pix[PicCurrentNum];
document["ChangingPix"].src = PicCurrent.src;
}
// End -->
</script>
et ensuite j'insere ca a l'endroit voulut
<img src="image/image1.jpg" name="ChangingPix" height="120" width="120"/>
J'ai plusieurs question;
Est'il possible d'empecher que img src="image/image1.jpg soit la premiére image affiché? que ce soit réelement de l'aléatoire?
De plus en réalité je vais piocher mes photos dans deux dossier differents, et j'aimerai que quand ca vient d'un dossier les photos possedent une url et de l'autre dossier une autre url
Bonjour,
J'aimerai que dans mon site, au niveau de ma banniére composées de 5 image defilent de maniére aléatoire, toutes les 5secondes
alors je suis partis avec ce bout de code mais j'ai pas réussit a l'adapter:
<?php
$repertoire = "image/";
$dir = opendir($repertoire);
$nbIm = 0; //Compteur d'image permettant de les ajouter dans le tableau JS
while($im = readdir($dir)) {
if($im != ".." && $im != ".") {
// Ajout de l'image dans le tableau JS (Bien faire un echo !)
echo "Pix[$nbIm] = '" . $repertoire.$im . "';";
$nbIm++;
}
}
//Toujours tenter de fermer un dossier après une ouverture (même si l'ouverture a manqué)
closedir($dir);
?>
var howMany = Pix.length;
timeDelay *= 1000;
var PicCurrentNum = 0;
var PicCurrent = new Image();
PicCurrent.src = Pix[PicCurrentNum];
function startPix() {
setInterval("slideshow()", timeDelay);
}
function slideshow() {
PicCurrentNum++;
if (PicCurrentNum == howMany) {
PicCurrentNum = 0;
}
PicCurrent.src = Pix[PicCurrentNum];
document["ChangingPix"].src = PicCurrent.src;
}
// End -->
</script>
et ensuite j'insere ca a l'endroit voulut
<img src="image/image1.jpg" name="ChangingPix" height="120" width="120"/>
J'ai plusieurs question;
Est'il possible d'empecher que img src="image/image1.jpg soit la premiére image affiché? que ce soit réelement de l'aléatoire?
De plus en réalité je vais piocher mes photos dans deux dossier differents, et j'aimerai que quand ca vient d'un dossier les photos possedent une url et de l'autre dossier une autre url
A voir également:
- Défilement aleatoire de 5 images
- Barre de défilement - Guide
- Des images - Guide
- Tableau de combinaison loto 5/90 - Forum Excel
- Arrêt défilement excel ✓ - Forum MacOS
- Problème défilement incontrôlable ✓ - Forum Excel
1 réponse
Essayer de reprendre une bibli déjà faites prends plus de temps que de refaire à zéro.
Cette ligne la si jquery n'est pas déjà inséré ou si tu sais pas ce que c'est jquery :
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
La ou tu veux mettre ta bannière
<img src="" id="banniere" />
<script>
$(document).ready(function(){
boucle();
});
function boucle(){
$('#banniere').attr('src', 'image/image'+Math.floor((Math.random()*5)+1)+'.jpg');
setTimeout(function(){boucle()}, 5000);
}
</script>
Voila en cinq minutes
Cette ligne la si jquery n'est pas déjà inséré ou si tu sais pas ce que c'est jquery :
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
La ou tu veux mettre ta bannière
<img src="" id="banniere" />
<script>
$(document).ready(function(){
boucle();
});
function boucle(){
$('#banniere').attr('src', 'image/image'+Math.floor((Math.random()*5)+1)+'.jpg');
setTimeout(function(){boucle()}, 5000);
}
</script>
Voila en cinq minutes
$('#banniere').attr('src', 'image/image'+Math.floor((Math.random()*5)+1)+'.jpg');
par
if(Math.floor((Math.random()*2)+1)==1){
var repertoire = 'image/image';
var nbimage = 5
}else{
var repertoire = 'image_bis/image';
var nbimage = 9
}
$('#banniere').attr('src', repertoire+Math.floor((Math.random()*nbimage)+1)+'.jpg');
Avec nombre d'image dans chaque répertorie paramétrable
Merci j'ai fait ce que tu m'as dis mais cela ne marche pas:
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
</head>
<body>
<div class="corpshaut">
<img src="" id="banniere" />
<script>
$(document).ready(function(){
boucle();
});
function boucle(){
if(Math.floor((Math.random()*2)+1)==1){
var repertoire = 'image/';
var nbimage = 5
}else{
var repertoire = 'image2/';
var nbimage = 5
}
$('#banniere').attr('src', repertoire+Math.floor((Math.random()*nbimage)+1)+'.jpg');
setTimeout(function(){boucle()}, 5000);
}
</script>
</div><!--corps-->
</body>
les deux dossiers existent et sont a la bonne place,mais ca me marque tout simplement qu'il n'y a pas d'image.
Deplus j'aimerai que cette image soit cliquacle et que de ce fait selon son dossier de provenance l'url de destination ne soit pas la meme ,
Merci a toi
Pour le lien remplace :
if(Math.floor((Math.random()*2)+1)==1){
var repertoire = 'image/';
var nbimage = 5
}else{
var repertoire = 'image2/';
var nbimage = 5
}
$('#banniere').attr('src', repertoire+Math.floor((Math.random()*nbimage)+1)+'.jpg');
Par
if(Math.floor((Math.random()*2)+1)==1){
var repertoire = 'image/';
var nbimage = 5
var lien = 'www.lien.fr"
}else{
var repertoire = 'image2/';
var nbimage = 5
var lien = 'www.lien2.fr"
}
$('#lien_banniere').('href, lien);
$('#banniere').attr('src', repertoire+Math.floor((Math.random()*nbimage)+1)+'.jpg');
et ta bannière par
<a href="" id="lien_banniere"><img src="" id="banniere" /></a>
Si ma solution ou ton plugin ne te conviennent toujours pas essayer d'en chercher un nouveau.