1

この URL - http://thespace betweenthewords.org/sandbox/

jQuery FadeIn/FadeOut 効果を使用して単語の配列を循環しようとしています。

ただし、表示される単語の配列は [0] から始まっていないようです。関数が実行されている順序で何かが欠けている可能性があります。

コミュニティの誰かが、これまでのコードについてコメントしたい場合は、洞察をいただければ幸いです。

4

1 に答える 1

2

.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);
于 2009-08-11T16:53:10.123 に答える