0

我制作了这个简单的 jQuery 图片库http://jsfiddle.net/RVermeulen/XNsHC/3/

但是我不能在其中制作一个漂亮的 fadeOut 和 In,因为如果我这样做(其中有 fadeOut 和 In):

$(document).ready(function() {

    $(".small_image").click(function() {
        event.preventDefault();
        var image = $(this).attr("rel");
        $('#current_image').fadeOut(300);
        $('#current_image').html('<img width="370" src="' + image + '"/>');
        $('#current_image').fadeIn(300);
    });

});

看起来 .html 函数的加载速度比 FadeIn 快,所以它不是“平滑”的淡入淡出。有谁知道如何通过延迟或其他方式解决这个问题?

4

2 回答 2

1

图片淡出需要使用complete 回调来改变图片:

$(".small_image").click(function () {
    event.preventDefault();
    var image = $(this).attr("rel");
    $('#current_image').fadeOut(300, function() {
        $('#current_image').html('<img width="370" src="' + image + '"/>');
        $('#current_image').fadeIn(300);
    });
});

jsFiddle 示例

于 2013-08-12T18:51:07.157 回答
0

这是你要找的吗?

小提琴

$(document).ready(function () {
    $(".small_image").click(function () {
        event.preventDefault();
        var image = $(this).prop("rel");
        $('#under').prop('src', image);
        $('#above').fadeOut(600, function () {
            $('#above').prop('src', $('#under').prop('src')).css('display', 'block');
        });
    });
});
于 2013-08-12T19:45:35.883 回答