Boucler des images avec AJAX

Said_de_lyon Messages postés 18 Date d'inscription   Statut Membre Dernière intervention   -  
DelNC Messages postés 2234 Date d'inscription   Statut Membre Dernière intervention   -
Voici un algorithme qui ne fonctionne que sous IE.
"graphe" est un graphique réalisé en PHP.
Sous IE tous les graphique depuis la periode_debut_profilage jusque la periode_fin_profilage sont affichés.
Sous les autres navigateurs, il y a le temps d'attente de l'affichage de tous les graphes, mais il ne s'affiche que le dernier graphe.


Je demande donc de l'aide.

Merci d'avance.

Saïd_de_Lyon



$('#graphe_profilage').bind('click' , function()
{

delta_days = 0;

periode = $('#periode_debut_profilage').text();

periode_debut_profilage = addDaysToDate( periode , delta_days);

while ( periode_debut_profilage != $('#periode_fin_profilage').text() )
{
$.ajax(
{
type: 'POST',

url: 'ajax_graphe.php',

dataType: 'json',

data : {debut : periode_debut_profilage , fin : $('#periode_fin_profilage').text() } ,

success: function(graphe)
{
$('#graphique_profilage').delay(10).replaceWith('<div id="graphique_profilage" style="margin-left:15%;"><img src="graphique/' + graphe + '" height="500px" width="90%" style="z-index:5; position:relative"/></div>');
}

});

delta_days++;

periode = $('#periode_debut_profilage').text();

periode_debut_profilage = addDaysToDate( periode , delta_days);

}

$('#arret_profilage').delay(delta_days * 70).slideDown('slow');

});




$('#arret_profilage').bind('click' , function()
{
$('#graphique_profilage').slideUp('slow');

$(this).slideUp('slow');

});

1 réponse

DelNC Messages postés 2234 Date d'inscription   Statut Membre Dernière intervention   2 004
 
Bonjour,

je ne suis pas certaine de comprendre ce que vous voulez.

Si vous voulez faire une suite d'images qui passent les unes après les autres essayez ceci

Dans le body

<center>
<script type="text/javascript">
var tab = ["../images/image1.jpg",
"../images/image2.jpg",
"../images/image3.jpg"];
var secondes = 10;
var numero = -1;
var
aleatoire = false;

function changerImage () {
if (aleatoire) {
var n = numero;
while (n == numero) {
n = Math.floor(Math.random() *
tab.length);
}
numero = n;
}
else {
numero++;
if (numero >= tab.length) numero =0;
}
document.getElementById('../images/image1.jpg').src =
tab[numero];
setTimeout("changerImage();", secondes*200);
}
</script>


<center>
<img width="150" src="" id="../images/cimage1.jpg"/>
<script type="text/javascript">
<!--
changerImage();
// -->
</script>
</center>
1