Javascript 用于淡出的回调中的Jquery fadeIn不持久
希望有人能为我解释一下这个问题。。。。我正在使用setInterval在网页上交替显示标题。它淡出上一个函数,然后在回调函数中淡出新函数。它以前工作得很好,但是我把回调函数和淡出函数分开了,因为我想一开始就毫不拖延地运行它,现在我得到了最初的标题,但是当需要更改时,它们会在一瞬间淡入,然后再次消失Javascript 用于淡出的回调中的Jquery fadeIn不持久,javascript,jquery,setinterval,fadein,fadeout,Javascript,Jquery,Setinterval,Fadein,Fadeout,希望有人能为我解释一下这个问题。。。。我正在使用setInterval在网页上交替显示标题。它淡出上一个函数,然后在回调函数中淡出新函数。它以前工作得很好,但是我把回调函数和淡出函数分开了,因为我想一开始就毫不拖延地运行它,现在我得到了最初的标题,但是当需要更改时,它们会在一瞬间淡入,然后再次消失 function processSidebar(data) { var headlines = $.parseJSON(data); va
function processSidebar(data) {
var headlines = $.parseJSON(data);
var sIndex = 0;
function newSidebar(surl, sIndex) {
$(".sidebar").html(headlines[sIndex].date + '<br><a href="' + surl + '">' + headlines[sIndex].line + '</a>');
$(".sidebar").fadeIn(400);
}
newSidebar("getme.php?blog=1&headline=1", sIndex);
setInterval(function() {
++sIndex;
if (sIndex == headlines.length) {sIndex = 0}
var surl="getme.php?blog=1&headline=" + headlines[sIndex].index;
$(".sidebar").fadeOut(400,newSidebar(surl,sIndex));
}, 10000); // end setInterval
}; // end processSidebar
函数处理侧栏(数据){
var headlines=$.parseJSON(数据);
var-sIndex=0;
函数newSidebar(surl、sIndex){
$(“.sidebar”).html(标题[sIndex].date+”
);
$(“.sidebar”).fadeIn(400);
}
newSidebar(“getme.php?blog=1&headline=1”,sIndex);
setInterval(函数(){
++sIndex;
如果(sIndex==headlines.length){sIndex=0}
var surl=“getme.php?blog=1&headline=“+headlines[sIndex]”索引;
$(“.sidebar”).fadeOut(400,newSidebar(surl,sIndex));
},10000);//结束设置间隔
}; // 结束进程侧栏
jQuery的fadeOut
需要一个函数作为complete
参数
您正在提供newSidebar(surl,sIndex)
,它会立即得到评估,并且不会返回任何结果(但会执行整个fadeIn
内容)
您想使用匿名函数:
$(“.sidebar”).fadeOut(400,function(){newSidebar(surl,sIndex)})