显示一个句子,一次一个字符

我想用jQuery一次一个地显示一个字符。 有没有可以做到这一点的插件或者我怎么能得到这种效果?

你可以写一个小插件来做。 这里有一些东西让你开始(远非完美,只是为了给你一个想法!):

(function($) { $.fn.writeText = function(content) { var contentArray = content.split(""), current = 0, elem = this; setInterval(function() { if(current < contentArray.length) { elem.text(elem.text() + contentArray[current++]); } }, 100); }; })(jQuery); 

你可以这样打电话:

 $("#element").writeText("This is some text"); 

这是一个有效的例子 。

看看TickerType插件: http ://www.hungry-media.com/code/jQuery/tickerType/

您引用的网站*使用jQuery Ticker,可在http://www.jquerynewsticker.com/在线找到

它的实现也相对简单:

  

使用以下jQuery / JavaScript:

  

有关更多选项和配置详细信息,请参阅插件文档。

*由于其内容,参考网站可能未在OP中列出

这会将字符串转换为数组,并一次将其写出字符。

 var str = "This is a sentence".split(''); for (var i=0; i < str.length; i++) { console.log(str[i]); }; 

http://jsfiddle.net/44xEe/1/

 var chars = $("#target").html().split(/./); var content = ""; $.each(chars, function(index, value) { content += ""+value+""; }); $("#target").html(content); $("#target span").each(function(){ $(this).show(); }); 

我最近创建了一个整洁的小js库,没有依赖关系来解决这个问题。 查看Sequencr.js

 var stringToPrint = "Hello World!" Sequencr.for(0, stringToPrint.length, function(i) { document.getElementById("output").innerHTML += stringToPrint[i]; }, 200, null);