jquery闪烁加载与fadeTo结合



我看过一些关于这个的帖子,但是没有一个是适合我的解决方案-我已经尝试了很多。我只是在执行一个简单的序列——淡出div,加载内容,淡出dive,但加载的内容在完全不透明的情况下出现一会儿,然后消失,然后执行淡出。我试过将加载的div的显示属性设置为none,然后在淡入功能中显示它,设置延迟,用于显示等。我试过了fadeTo, fadeOut等。顺便说一下,hide()可以正常工作,但这不是我想要的效果。

下面是我的代码:

$('#bio_container').fadeOut(500,loadContent(ident));
});
function loadContent(ident){
    $('#bio_container').load('/index.php/ajax/bios/' + ident,showContent);
}
function showContent(){
    $('#bio_container').fadeIn(500);
}

试试这个

$('#bio_container').fadeOut(500, function(){
     loadContent(ident)
});

编辑:如果你看一下fadeOut的定义,它接受一个回调函数作为参数,并在动画完成时调用该函数。因此,回调引用要么是像上面那样的内联函数定义,要么只是一个没有括号的函数名。如果你给出这样的someFunction(),它会计算函数,然后将返回值作为参数。并且可能在动画完成并调用结果时抛出一个抑制异常。

之所以会发生,是因为javascript是以线性形式执行的,并且fadeOut(time,fn)执行fn,然后执行fade。

为了解决这个问题,我使用了一些JQuery插件,对于你的情况,我建议这个简单的幻灯片,或者如果你正在寻找更具体的东西,请参阅此列表。

PS:对不起,我的英语不好。

最新更新