Эффекты обратного вызова AJAX с помощью jQuery - PullRequest
2 голосов
/ 27 марта 2012

Я наткнулся на проблему.Я использую простой сценарий AJAX, написанный на jQuery, я хочу сделать обратный вызов AJAX для изменения html, например, с эффектом easeInOut, но я не знаю, как это сделать, потому что теперь, когда приходит ответ, содержимое div меняетсяс каким-то мерцающим эффектом, что очень уродливо, я предполагаю, что это «эффект» по умолчанию.

Сценарий: (Я пытался добавить .fadeOut('slow') к методу html(), но ничего не изменилось)

$.ajax({
    type: "POST",
    url: "institutions-filter.action",
    data: data,
    cache: false,
    success: function(result){
        $("#display-block").html(result);
    }
});  

Ответы [ 3 ]

6 голосов
/ 28 марта 2012

Скрыть это перед изменением HTML, а затем показать:

$.ajax({
    type: "POST",
    url: "institutions-filter.action",
    data: data,
    cache: false,
    success: function(result)
    {
        var $el = $("#display-block");

        $el.fadeOut(400, function()
        {
            $el.html(result).fadeIn(400);
        });
    }
});

Измените 400 на любую нужную вам продолжительность ...

1 голос
/ 28 марта 2012

Попробуйте это:

$.ajax({
                type: "POST",
                url: "institutions-filter.action",
                data: data,
                cache: false,
                success: function(result){
                 $("#display-block").html(result).fadeTo("slow", 1);
                }
            });
0 голосов
/ 28 марта 2012

Вы должны

$("#display-block").hide().html(result).fadeIn('slow');

или

$("#display-block").fadeOut('slow').html(result).fadeIn('slow');
...