div から一度に 1 つの単語をフェードインしようとしています。以下のコードは 1 つの div に対しては正常に機能しますが、複数の div がある場合、連続して実行されません。
これがフィドルです:http://jsfiddle.net/zlud/6czap/110/
誰でも明らかな問題を見ることができますか? 1行ずつ印刷するという提案は大歓迎です。(したがって、最初の div が完了した後に、2 番目の div のテキストが出力されます。)
<html>
<div class="example">These are some words that </br> should be faded in one after the other.</div>
<div class="example"> No way some words that </br> should be faded in one after the other.</div>
</html>
JavaScript
var $el = $('.example').map(function () {
return this;
}).get();
$el.forEach(function (eachdiv){
var text = $(eachdiv).text(),
words = text.split(" ");
var html = "";
for (var i = 0; i < words.length; i++) {
html += "<span>" + words[i] + " </span>";
$(eachdiv).html(html).children().hide().each(function(i){
return $(this).delay(i*500).fadeIn(700);``
});
}
});