4

我正在使用 jQuery 交叉淡入淡出图像。

这是我正在使用的代码:

$('.' + currentimage).fadeOut('slow', function() {
    $('.' + selectedimage).fadeIn('slow');
});

这是在所选图像开始淡入之前将第一张图像淡出 100%。当第一张图像淡出 60-70% 时,是否有一种简单的方法可以开始淡入第二张图像?

编辑:所有好的答案。我认为还有一个问题。我的图像没有重叠显示 - 一次只能看到 1 张图像。

4

4 回答 4

3

尝试

$('.' + currentimage).fadeOut('slow');
$('.' + selectedimage).delay(100).fadeIn('slow');
于 2012-08-15T15:34:45.720 回答
3

slow是 600 毫秒,所以 420 是 70%

$('.' + currentimage).fadeOut('slow');
$('.' + selectedimage).delay(420).fadeIn(600);
于 2012-08-15T15:36:12.197 回答
1

您可以作弊并应用部分淡入淡出(使用fadeTo,调用您的其他函数,然后继续。

$('.' + currentimage).fadeTo('slow', .6, function() {
    $('.' + selectedimage).fadeIn('slow');
    $(this).fadeOut('slow');
});
于 2012-08-15T15:37:43.190 回答
-1

那是因为您在那里声明的函数fadeOut()是一个回调函数,只有在fadeOut()完成后才能调用。您应该能够简单地执行一个项目之后另一个项目以获得所需的效果。这不像从 X% 开始那样精确fadeOut(),但您可以调整fadeOutfadeIn时间以获得所需的效果或delay()fadeIn.

$('.' + currentimage).fadeOut('slow');
$('.' + selectedimage).fadeIn('slow');
于 2012-08-15T15:35:56.570 回答