我正在使用jQuery来交叉淡入淡出图像。
这是我正在使用的代码:
$('.' + currentimage).fadeOut('slow', function() {
$('.' + selectedimage).fadeIn('slow');
});
在所选图像开始淡入之前,这会使第一张图像褪色100%。当第一张图像淡出60-70%时,是否有一种简单的方法可以在第二张图像中开始淡入淡出?
编辑:所有好的答案。我认为还有一个问题。我的图像没有显示在彼此之上 - 一次只能看到1个图像。答案 0 :(得分:3)
尝试
$('.' + currentimage).fadeOut('slow');
$('.' + selectedimage).delay(100).fadeIn('slow');
答案 1 :(得分:3)
slow
为600毫秒,因此420为70%
$('.' + currentimage).fadeOut('slow');
$('.' + selectedimage).delay(420).fadeIn(600);
答案 2 :(得分:1)
你可以作弊并应用部分淡入淡出(使用fadeTo,调用你的其他功能,然后继续。
$('.' + currentimage).fadeTo('slow', .6, function() {
$('.' + selectedimage).fadeIn('slow');
$(this).fadeOut('slow');
});
答案 3 :(得分:-1)
这是因为你在fadeOut()
声明的函数是一个回调函数,只有在fadeOut()
完成后才能调用它。您应该只是能够一个接一个地执行一个项目以获得所需的效果。这不如从fadeOut()
的X%开始那么精确,但您可以调整fadeOut
和fadeIn
时间以获得所需效果或投入delay()
在fadeIn
。
$('.' + currentimage).fadeOut('slow');
$('.' + selectedimage).fadeIn('slow');