2011-09-24 6 views
6

jqueryでテキストを1行に表示することはできますか?私はそれがフラッシュで行うことができることを知っている私はここに例があるhttp://iliketoplay.dk/#/blog/deffがあります。ビデオの再生中、マウスはテキストを含むボックスを開く円をクリックしますが、テキストの各行は一度に1つずつ表示され、本当にクールな効果があります。それは再作成できますか?jqueryで各行のテキストをアニメーション表示できますか?

+0

スパン内の各単語を折り返し、行と列で索引付けしてからアニメーション化することができます。私はそれをショットを与えるし、あなたに戻って取得します。 –

答えて

4

ことをアニメーション化します。あなたはチャンクアップこのように行うことができます行のテキストを行う必要があります。

var lines = text.split("\n"); 

あなたが望むようそして、あなたはそれぞれの行で何かを行うことができ、例えば:

var timer, 
    displayLine = function(){ 
    var nextLine = lines.shift(); 
    if(nextLine){ 
     var newLine = $('<span class="initState">' + nextLine + '</span>'); 
     $('#someContainer').append(newLine); 
     newLine.animate({ [PUT SOME ANIMATION HERE] }, 1000); 
     } 
     timer = setTimeout(displayLine,3000); 
    } 
    } 
timer = setTimeout(displayLine,3000); 

ここに完全な例を参照してください。 http://jsfiddle.net/7dd52/

+0

initStateクラスは、アニメーションを開始する場所に要素が表示されるようにスタイルを設定する必要があります。例えば。高さ:0; margin-top:-20px; overflow:hidden; –

+0

こんにちは、私に例を教えてもらえますか?私は少し混乱しています – Farreal

+0

確か:http://jsfiddle.net/7dd52/ –

1

あなただけの行ごとにdiv要素を使用して、これが問題になることはありませんが、解決策は、あなたの入力フォーマットに依存して、特定の...

<div class="first">first line</div> 
<div class="second">second</div> 

$(".first").animate({'left':'-15px'}, 1000); 
+0

私はそれを使用しません、私はテキストが何であるかわからない、私はそれが動的に行われるべきだと思う。 –

関連する問題