КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
ГрафопостроительeaseIn - базовое поведение: медленная анимация в начале, с постепенным ускорением.
Процесс анимации полностью в ваших руках благодаря delta. Вы можете сделать ее настолько реалистичной, насколько захотите. Впрочем, исходя из практики, можно сказать, что варианты delta, описанные выше, покрывают 95% потребностей в анимации. Сложные варианты step Анимировать можно все, что угодно. Вместо движения, как во всех предыдущих примерах, вы можете изменять прозрачность, ширину, высоту, цвет… Все, о чем вы можете подумать! Достаточно лишь написать соответствующий step. Подсветка цветом Функция highlight, представленная ниже, анимирует изменение цвета.
Набор текста Вы можете создавать интересные анимации, как, например, набор текста в «скачущем» режиме: Запустить анимированную печать!
Итого Анимация выполняется путём использования setInterval с маленькой задержкой, порядка 10-50мс. При каждом запуске происходит отрисовка очередного кадра. Анимационная функция, немного расширенная:
Основные параметры:
Функцию delta можно модифицировать, используя трансформации easeOut/easeInOut:
На основе этой общей анимационной функции можно делать и более специализированные, например animateProp, которая анимирует свойство opts.elem[opts.prop] от opts.start px доopts.end px :
Можно добавить еще варианты delta, step, создать общий фреймворк для анимации с единым таймером и т.п. Собственно, это и делают библиотеки типа jQuery.
|