我使用此代码淡入淡出不同的消息。 它工作正常。唯一的问题是它延迟了第一个循环。我必须等到第一条消息出现之前。我试图解决它,但没有运气!
var loops = 0;
function t() {
var news = new Array("Text01", "Text02");
var l = news.length;
var fade = 300;
var delay = 6000;
var process = delay+fade+fade;
var n = 0;
var f = '';
for(i=0; i<l; i++){
f += "<span class='ticker' id='str"+i+"'>"+news[i]+"</span> ";
$("#newsticker").html(f);
}
for(i=0; i<l; i++){
n++;
var offset = i*process;
$("#str"+i).delay(offset).fadeIn(fade).delay(delay).fadeOut(fade);
}
var loop_process = n*process;
if(loops==0){
setTimeout("t()", 0);
}
setTimeout("t()", loop_process);
loops++;
}
t();
HTML
<span id="newsticker"></span>