考虑以下功能:
$("document").ready(function(){
var echoText = 'Hello world!';
echoText = echoText.split('');
$.each(echoText, function(key, value){
$("#content").append(value);
});
});
这只是回显输入文本。不过,我想做的是在回显的每个字符之间添加一个延迟,因此看起来像是慢速的人类打字。任何想法如何进行?我尝试了谷歌搜索,但到目前为止没有任何帮助。
最佳答案
考虑使用setTimeout()
函数:
$("document").ready(function(){
var data = 'Hello world!';
var lastIndex = 0;
var fnEcho = function() {
if (lastIndex < data.length) {
$("#content").append(data[lastIndex]);
lastIndex++;
window.setTimeout(fnEcho, 1000);
}
}
fnEcho();
});