[javascript] Diaporama

benschumi -  
Scalpweb Messages postés 1483 Statut Membre -
Bonjour,
J'ai fait un diaporama d'image en javascript sauf que j'ai un problème.
Quand je lance la lecture, tout se passe bien, sauf que si je reclique sur le bouton lecture,
la fonction se lance a nouveau donc en gros il y a une image qui saute. Pareil si je reclique encore,
trois image.
J'ai essayer de mettre une condition qui arrête le diaporama et le relance dans ce cas mais je ne comprend pas vraiment ce que j'ai fait et bien sur, çà ne marche pas.
Aidez moi pleaze...
Merci beaucoup

//déclenche la lecture automatique (changement toute les 5 secondes)
function Lecture()
	{	
		if (lectStop == "stop") lectStop = "lect";
                if (lectStop == "lect") resetLecture();
		numero += 1;
		if (numero == nom.length + 1) numero = 1;
			document.getElementById("image").src = dossier+nom[numero];
			document.getElementById("texte").innerHTML = titre[numero];
			window.setTimeout("Lecture()", 5000);

	}


//stop la lecture
function Stop()
	{	if (lectStop == "lect") {
			lectStop == "stop";
			resetLecture(); };
	}

	
function resetLecture()	{	
		window.clearTimeout("Lecture()");
		window.clearTimeout("LectureRapide()");	}
Configuration: Windows XP
Firefox 2.0.0.12

4 réponses

  1. Scalpweb Messages postés 1483 Statut Membre 43
     
    Déjà, a mon avis, tu as un conflit ici :

    if (lectStop == "stop") lectStop = "lect";
    if (lectStop == "lect") resetLecture();

    Ce serait pas plutôt ça :

    if (lectStop == "stop")
    {
    lectStop = "lect";
    }
    else
    {
    resetLecture();
    }
    0
    1. benschumi
       
      merci de ton aide mais dans ce que tu as écrit,
      le diaporama lance une image donc çà fait lectStop = "lect",
      puis lit une deuxième image et lit donc resetLecture();
      et le diaporama s'arrête.
      merci quand même
      0
  2. Scalpweb Messages postés 1483 Statut Membre 43
     
    Avant ton :

    window.setTimeout("Lecture()", 5000);

    de la première fonction, ajoute ça :

    window.clearTimeout("Lecture()");
    0