我有一个divI want to fade out,update its content,and then fade back in.到目前为止,我已经尝试过:

$('#myDivID').fadeOut('slow', function() {
    $('#myDivID').replaceWith("<div id='myDivID'>" + content + "</div>");
    $('#myDivID').fadeIn('slow');
});

发生的是淡出完成并调用匿名回调。到目前为止,一切都很好。
正确地替换了div的内容,但是fadeIn()效果是立即的-没有平滑的转换,只是快速、快速地跳转到更新的div
有没有更好的方法来实现这一点?谢谢你的建议。

最佳答案

您应该这样做(这是有效的,是经过测试的代码):

$('#myDivID').fadeOut('slow', function() {
    $('#myDivID').html(content);
    $('#myDivID').fadeIn('slow');
});

您的代码不起作用,因为新创建的DIV立即可见。另一个解决方案是添加一个display:none如下:
   $('#myDivID').fadeOut('slow', function() {
      $('#myDivID').replaceWith("<div id='myDivID' style='display:none'>" + content + "</div>");
      $('#myDivID').fadeIn('slow');
  });

希望这有帮助
干杯

07-24 09:22