淡出,加载新内​​容,淡化 – >幻灯片

我正在淡出div的内容,用新内容替换它,然后再次淡入它,如下所示:

area.fadeOut('400').load("file.php", function(){ $(this).fadeIn('400'); } ); 

首先,这个链是正确的吗?

其次,如果可能的话(我需要将旧内容向左滑动),我想通过从右侧滑入来替换淡入效果? 怎么可能实现?

我想指出fadeInfadeOut是jQuery Core的一部分。 你有加载的jQuery UI吗? 如果没有,你将需要它用于其他答案中使用的show版本。

此外,您已经拥有了区域变量,因此无需使用S(this)重新实例化。 它越多,你就越慢。

试试这个:

 var newArea = area.clone().css("display", "none").insertAfter(area); newArea.load("file.php", function() { area.hide("slide", {direction:"left"}, 400, function() { area.remove(); area = newArea; }); newArea.show("slide", {direction:"left"}, 400); }); 

它应加载到隐藏元素中,然后在原始元素向左滑动时从右侧滑入。

编辑:因为看起来你正在寻找一些不同的东西,我正在更新代码。

对我来说很好看,只需用$(this).show("slide", { direction: "left" }, 400);替换对fadeIn()的调用$(this).show("slide", { direction: "left" }, 400);

 area.fadeOut('400', function() { $(this).load("file.php", function() { $(this).show("slide", {direction:"left"}, 400); }); }); 

我认为你需要像这样调用load因为它可能不会等待fadeOut完成。