функция анонимного обратного вызова в .animate () не работает - PullRequest
4 голосов
/ 26 октября 2010

Не могу понять, в чем проблема с этим кодом.Сама анимация работает отлично:

if (!list.is(':animated')) {
    list.animate(
        {"top": "+="+item_size},
        {queue:false, duration:speed},
        function() {
            alert();
        }
    ); // end of animate function

} //end of if statement

Ответы [ 2 ]

5 голосов
/ 26 октября 2010

Вы смешиваете две подписи .animate(). Вам необходимо сделать обратный вызов частью аргумента options:

if(!list.is(':animated')){
    list.animate({
        top: "+="+item_size
    }, //end of properties argument
    {
        queue: false, 
        duration: speed,
        complete: function(){
            alert();
        } //end of callback
    }  // end of options argument
    ); // end of animate function
} //end of if statement
1 голос
/ 26 октября 2010

Проверьте API , кажется, вы не правильно вызываете функцию:

.animate( properties, [ duration ], [ easing ], [ callback ] )

Угадайте, как вы должны ее вызывать:

.animate( {"top": "+="+item_size}, speed, 'linear', function(){alert();});

Измените linear на любую нужную вам функцию замедления.

...