2013-07-28 2 views
0

У меня есть сценарий, который анимирует мое изображение в заголовке. Сжимает его, когда пользователь прокручивает вниз и увеличивает его, когда пользователь достигает вершины. Вот он:jQuery animate() запущен поздно

function headerScroll() { 
    $(window).scroll(function() { 
     if($(document).scrollTop() != 0) { 
      $('#headerContainer').addClass('smaller'); 
      $('#header img').animate({ 
       height: '170px', 
       left: '414px', 
       top: '10px' 
      },200); 
     } else if($(document).scrollTop() < 100) { 
      $('#header img').animate({ 
       height: '307px', 
       left: '361px', 
       top: 0 
      },200, function() { 
       $('#headerContainer').removeClass('smaller'); 
      }); 
     } 
    }); 
} 

Проблема - иногда (не всегда) звуковая анимация не работает некоторое время. Иногда он ждет несколько секунд. Как я могу это предотвратить?

Редактировать: когда я добавил alert('test') до или после animate, он работал своевременно.

ответ

1

Использование: $('#header img').animate().stop().animate( ....
Надежда работа

+0

Это поможет;) Спасибо. –

+1

Я не думаю, что вам нужно два вызова анимации, достаточно простого вызова остановить, прежде чем настройка новой анимации будет достаточной, и теперь проблема решена теперь @TomekBuszewski? если это так, то отметьте ответ, как принято –

+0

ваши права. –