Вопрос

По этому URL - http://thespacebetweenthewords.org/sandbox/

Я пытаюсь переехать через массивы слов с эффектом jQuery Fadein/Fadeout.

Тем не менее, массив отображаемых слов не начинается с [0].Возможно, я что -то упускаю с порядок, в котором выполняются функции.

Если кто -то в сообществе хотел бы прокомментировать код, поскольку он стоит до сих пор, понимает.

Это было полезно?

Решение

Вы правильно используете функцию обратного вызова с .fadeIn() чтобы гарантировать, что слово не начнет исчезать, пока оно не закончится.Однако вы не применили тот же принцип к перебору глаголов.Ваш внешний for цикл мгновенно просмотрит все глаголы, показывая каждый из них, а затем терпеливо ждет, пока не придет время их скрыть (когда, конечно, к тому времени будет отображаться только самый последний глагол).

Вы можете попробовать что-то вроде этого:

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);
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top