Question

à l'adresse - http://thespacebetweenthewords.org/sandbox/

Je cherche à faire défiler des tableaux de mots avec un jQuery FadeIn / FadeOut effet.

Le tableau de mots affichés ne semble pas être à partir de [0], bien que. Il me manque peut-être quelque chose avec l'ordre dans lequel la fonctions d'exécution.

Si quelqu'un dans la communauté aimerait commenter le code tel qu'il se tient ce jour, la perspicacité est appréciée.

Était-ce utile?

La solution

Vous utilisez correctement une fonction de rappel avec .fadeIn() pour faire en sorte que le mot ne commence pas à disparaître jusqu'à ce qu'il soit terminé la décoloration. Cependant, vous n'avez pas appliqué le même principe à itérer les verbes. Votre boucle de for externe va déchirer tous les verbes en peu de temps, montrant chacun, puis attendre patiemment jusqu'à ce qu'il soit temps de les cacher (quand, bien sûr, seul le dernier verbe sera toujours montrer par là).

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);
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top