Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

jquery не работает обратная анимация

Никита Козлов Ученик (142), на голосовании 7 лет назад
$(document).ready(function(){
$("li").mouseover(function(){
$(this).animate({left:40},600);
});

$("li").mouseleave(function(){
$(this).animate({right:400},600);
});
});
Голосование за лучший ответ
Override.dll Просветленный (49265) 7 лет назад
Это чё за цирк говнокода? Надо всего-то добавить одну CSS3-анимацию.
Кирилл Мастер (1548) 7 лет назад
залил бы ты лучше код куда-нибудь, было бы проще. Так могу только сказать, что возможно аттрибуты right и left не заданы у элементов, или что-то с позиционированием. И такие простые анимации мне кажется лучше сделать через css, используя :hover, например
li{
position: relative;
left: 0;
-moz-transition: all 0.6s ease-in-out;
-webkit-transition: all 0.6s ease-in-out;
-o-transition: all 0.6s ease-in-out;
}

li:hover{
left: 40px;
}
A_A Мудрец (17757) 7 лет назад
Если уж делаете через animate, то работайте с одним и тем же свойством. Начали left - и используйте его до конца. Это будет правильнее. Но даже если не хотите - как минимум его нужно сбросить в исходное состояние
Похожие вопросы