Прогресс
Давайте вернёмся к методу animate()
, который в качестве аргументов может принимать расширенный набор опций — animate(properties, options)
, первым идут CSS-свойства, с которыми мы уже работали ранее, а вот вторым аргументом — опции, которые нам дают ряд новых возможностей (я перечислю все доступные опции, часть из них нам уже встречались):
| скорость анимации |
| функция « |
| флаг/параметр очереди; о ней расскажу чуть ниже |
| хэш, в котором можно описать, какую именно easing-функцию следует использовать для изменения определённых параметров: |
| функция, которая будет вызвана на каждом шаге анимации для каждого CSS-свойства; чуть позже опишу подробнее |
| функция, которая будет вызвана после окончания анимации |
| функция, которая будет вызвана до начала анимации |
| функция, которая будет вызвана на каждом шаге, но только единожды для элемента, вне зависимости от количества CSS-свойств |
| функция, которая будет вызвана после успешного окончания анимации |
| функция, которая будет вызвана после неудачного окончания анимации |
| функция, которая будет вызвана после окончания анимации при любом исходе |
Поддержка последних пяти функций добавлена в версии 1.8. Данный релиз jQuery ознаменовался глобальным рефакторингом анимации и переездом на Deferred.
Зачем я постоянно обращаю ваше внимание на изменения в таких старых версиях jQuery? Просто никто не знает с чем вам придется столкнуться, поэтому лучше готовиться к худшему.
В каких случаях нам это будет полезно? Ну если вам нужно отслеживать прогресс анимации, то это именно то, что вам нужно, точнее, вам нужна будет функция progress(animation, progress, remainingMs)
:
Last updated