2012-06-08 2 views
0

Этот Jquery код перемещает объект сверху вниз:JQuery анимации: Перемещение объектов

case 
'slideToTop': 
    $a.data('t',$a.css('top')); 
    $a.stop().animate({'top': $a.height()+20 + 'px'},300,function(){ 
    $a.css('top',0-$a.height()-20 + 'px'); 
    $curr.removeClass('sh').hide(); 
    $next.addClass('sh').show(); 
    $a.animate({'top': $a.data('t')},300); }); 
break; 

Как бы я изменить это, чтобы переместить объект снизу вверх?

Я попытался модифицировать эти строки:

$a.stop().animate({'top': $a.height()+20 + 'px'},300,function() 
$a.css('top',0-$a.height()-20 + 'px'); 

Для этого:

$a.stop().animate({'top': 0-$a.height()-20 + 'px'},300,function(){ 
$a.css('top',$a.height()+20 + 'px'); 

Не работает. Кто-нибудь знает? Благодаря!

+0

Это не выглядит как очень читаемый код ... – Blender

+0

Мои извинения. Я пытаюсь сделать его более читаемым. – user1312079

+0

Попробуйте изменить 'top' на' bottom' в исходном выражении. – Blender

ответ

0

Избавиться от «рх»

$a.stop().animate({'top': $a.height()+20},300,function(){$a.css('top',0-$a.height()-20 + 'px'); 
+0

То же самое относится ко всем выражениям – Kizer

+0

Избавление от «px» тоже не работает. – user1312079

+0

Вы должны проверить свой CSS, чтобы убедиться, что он правильный. Чтобы иметь возможность анимировать любой объект, основанный на позиции, вы должны правильно установить положение CSS (например, {position: relative}). Также проверьте свою консоль, чтобы убедиться, что код не вызывает никаких ошибок. Возможно, вы можете опубликовать свой код в jsfiddle и опубликовать ссылку. – Kizer

Смежные вопросы