Smothe fadeIn () анимация - PullRequest
       24

Smothe fadeIn () анимация

0 голосов
/ 06 октября 2011

У меня проблема с моей анимацией fadeIn, которая не работает должным образом.Вместо этого он появляется мгновенно без какой-либо анимации вообще?

function createABRN(url) {

    formSerial2 = $('#baseForm').serialize();
    $("input[name='ipreis']").val($selPositionVals[1]);

    $.ajax({
        type: "POST",
        url: url,
        data: formSerial2,
        success: function (msg) {

            $(".alert").html(msg);
            $(".alert").append($($delBillLink));
            createPositions();

            $('input[name="aufbest"]').hide();
            $('input[name="iweiter"]').hide();

            $('.position').fadeIn(); //<-- no animation, just jumps in?                     
        }
    });

}

Ответы [ 4 ]

0 голосов
/ 06 октября 2011

это изначально скрыто?попробуйте сначала скрыть это:

$('.position').hide().fadeIn();
0 голосов
/ 06 октября 2011

fadeIn нужна скорость, например, fadeIn ("медленно");

РЕДАКТИРОВАТЬ:

Как говорит комментатор, для fadeIn по умолчанию должно быть 400 мс, прямо между медленной (600 мс) и быстрой(200 мс).

Возможно, вам следует попробовать вместо этого запустить fadeIn в обработчике завершения ajax, поэтому он срабатывает, когда завершается запись ajax и существует элемент.

Чтобы убедиться, что он скрыт, вы можете попробовать запустить hide () для элемента в то же время, когда он вставляется с помощью ajax.

$('.position').hide();

$.ajax({
        type: "POST",
        url: url,
        data: formSerial2,
        success: function(msg){

          $(".alert").html(msg);
          $(".alert").append($($delBillLink));
          createPositions();

          $('input[name="aufbest"]').hide();
          $('input[name="iweiter"]').hide();
        },
        complete : function(){
          $('.position').fadeIn("slow"); 
        }
    });     
0 голосов
/ 06 октября 2011

Как и предыдущие ответы, я бы предложил

$('.position').fadeIn('slow');

Но вы также можете указать целое число для количества миллисекунд, которое должно потребоваться для затухания, например,

$('.position').fadeIn(5000);

Для появления элемента потребуется 5 секунд.

0 голосов
/ 06 октября 2011

На первый взгляд, я бы попробовал это:

$('.position').fadeIn('slow');

...