淡出,加载新内容,淡化 – >幻灯片
我正在淡出div的内容,用新内容替换它,然后再次淡入它,如下所示:
area.fadeOut('400').load("file.php", function(){ $(this).fadeIn('400'); } );
首先,这个链是正确的吗?
其次,如果可能的话(我需要将旧内容向左滑动),我想通过从右侧滑入来替换淡入效果? 怎么可能实现?
我想指出fadeIn
& fadeOut
是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
完成。