2009-08-11 12 views
1

à cette adresse - http://thespacebetweenthewords.org/sandbox/jQuery FadeIn/FadeOut, boucle à travers un tableau

Je tente de faire défiler les tableaux de mots avec un effet jQuery FadeIn/FadeOut .

Le tableau de mots affiché ne semble pas commencer à [0], cependant. Il me manque peut-être quelque chose avec l'ordre dans lequel les fonctions sont en cours d'exécution.

Si quelqu'un dans la communauté aimerait faire des commentaires sur le code comme se tient jusqu'à présent, un aperçu est apprécié.

+1

Il semble fonctionner correctement (fading gauche à droite). Est-ce toujours un problème ouvert? –

+0

J'essaye de fadeIn/fadeOut chaque mot dans chacun des trois tableaux de l'objet json. – jerome

Répondre

2

Vous utilisez correctement une fonction de rappel avec .fadeIn() pour vous assurer que le mot ne commence pas à disparaître avant la fin du fondu. Toutefois, vous n'avez pas appliqué le même principe pour parcourir les verbes. Votre boucle extérieure for déchirera tous les verbes en un rien de temps, montrant chacun d'entre eux, puis attendra patiemment jusqu'à ce qu'il soit temps de les cacher (alors que, bien sûr, seul le verbe le plus récent sera encore visible).

Vous pouvez essayer quelque chose comme ceci:

function showWord(selector, words, wordTime, i) { 
    if (words.length < i) 
     return; 
    var word = words[i]; 
    $(selector).html(word).fadeIn(wordTime, function() { 
     $(selector).fadeOut(wordTime, function() { 
      showWord(selector, words, wordTime, i + 1); 
     }); 
    }); 
} 
showWord("#verb-content", data.verbs, verbTime, 0); 
+0

J'ai mis à jour le code, ici - http://thespacebetweenthewords.org/sandbox/ La première chaîne de chaque tableau est affichée, mais il semble que la fonction ne soit pas appelée à fader dans la chaîne suivante de chaque tableau. des tableaux. Je ne suis pas sûr de la meilleure façon de transmettre des valeurs dans le rappel de showWord de fadeOut. – jerome

+0

En effet, j'ai écrit cet appel avec complètement les mauvais arguments. J'ai modifié ma version ci-dessus et l'ai testée avec succès. – VoteyDisciple

+0

Ha. Je me suis également rendu compte que la fonction devait être passée tous ses arguments et mise à jour ici - http://www.thespacebetweenthewords.org Je l'ai également ajusté de sorte que les mots boucleraient infiniment. – jerome