我是一个 jquery nube,我有这个打字机文本显示我想要的方式,但是当所有单词都被使用时,我需要循环回到开头。任何人都可以帮助我的代码。
这是我所拥有的:
$(function() {
var ch = 0;
var item = 0;
var items = $('#caption li').length;
var time = 2000;
var delay = 28;
var wait = 3000
var tagOpen = false;
$('#showCaption').css('width', ($('#caption').width()));
function tickInterval() {
if(item < items) {
var text = $('#caption li:eq('+item+')').html();
type(text);
text = null;
var tick = setTimeout(tickInterval, time);
} else {
clearTimeout(tick);
}
}
function type(text) {
time = delay;
ch++;
if(text.substr((ch - 1), 1) == '<') {
if(text.substr(ch, 1) == '/') {
tagOpen = false;
}
var tag = '';
while(text.substr((ch - 1), 1) != '>') {
tag += text.substr((ch - 1), 1);
ch++;
}
ch++;
tag += '>';
var html = /\<[a-z]+/i.exec(tag);
if(html !== null) {
html = html[0].replace('<', '</') + '>';
tagOpen = html;
}
}
if(tagOpen !== false) {
var t = text.substr(0, ch) + tagOpen;
} else {
var t = text.substr(0, ch);
}
$('#showCaption').html(t);
if(ch > text.length) {
item++;
ch = 0;
time = wait;
}
}
var tick = setTimeout(tickInterval, time);
});
如果您需要html,请告诉我。
提前致谢