如果我有一个div可以清除其内容,但又想在其中放置新的内容,那么我该如何对这些函数进行字符串处理,以便仅在上一个函数完成后才触发

$('#nner_container').fadeOut(300, function(){

    $('#header_div').after('<div id="inner_container" style="dispay:none"></div>');
       //when this insertion of inner_container completes, fill it with some content
       //and when that completes, fadeIn inner_container

});


大多数jquery函数似乎将其他函数作为最终参数,我认为正是出于此目的。但是after()并非如此。还是我做错了什么。

谢谢

最佳答案

添加新的div后,只需淡入inner_container

$('#inner_container').fadeOut(300, function(){

    $('#header_div').after('<div id="inner_container" style="dispay:none"></div>');
    $('#inner_container').fadeIn(300);
});


after函数是同步的,这意味着下一条语句在上一条语句完成之前不会执行。

另一方面,fadeOutfadeIn异步执行,这意味着下一个语句可以在效果完成之前执行。这就是效果完成后fadeOutfadeIn函数需要回调才能执行的原因。

关于javascript - 我该如何链接这些功能,以便一旦完成,就可以触发下一个?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12184455/

10-09 23:34
查看更多