2011-09-24 41 views
6

是否有可能在jQuery中一次顯示文本一行?我知道它可以在Flash中完成我在這裏有一個例子http://iliketoplay.dk/#/blog/deff。在視頻播放過程中,鼠標點擊一個圓圈,該圓圈打開一個包含文本的框,但每行顯示一行文本,其效果非常酷。它可以重新創建嗎?是否有可能使用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;邊距:-20px;溢出:隱藏;等等 –

+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

我不會使用它,我不知道文本會是什麼,我認爲它應該動態完成。 –

相關問題