jQuery: почему мой анимированный p «прыгает»?

#javascript #jquery #html #jquery-animate

#javascript #jquery #HTML #jquery-анимировать

Вопрос:

Я делаю простую анимацию в jQuery, когда вы наводите курсор на a, элемент p скользит на место под ним (position: absolute;), Но когда вы наводите курсор на a, p переходит в позицию, а затем анимируется, это так странно!

 $(".wrap a").hover(function() {
    $(".wrap p").animate({left: '0'},{duration:500});
            }, function(){        
                $(".wrap p").animate({left: '100%'}, {duration:500});
    });
;
 

Есть идеи, почему это может произойти?

Посмотрите его здесь.

Комментарии:

1. Кажется, это нормально работает в Firefox, но не в Chrome.

Ответ №1:

Просто напишите ‘0%’ вместо 0.

 $(".wrap a").hover(function() {
    $(".wrap p").animate({left: '0%'},{duration:500});
            }, function(){        
                $(".wrap p").animate({left: '100%'}, {duration:500});
    });
 

Ответ №2:

Вы передали 0 вместо 0% , это запутает jQuery в некоторых браузерах, где getComputedStyle (что использует jQuery) поведение отличается в единицах.

http://jsfiddle.net/BAXc2/3/