Форму анимации движения, как во Flash, найти сложнее, чем анимацию движения и простую интерполяцию атрибутов (например, в JSTweener, Tween.lib, animate () JQuery, transition () d3, animate () RaphaelJS и т. Д.). Эти библиотеки, некоторые из которых приведены в других ответах, не выполняют анимацию формы.
Сначала вы должны знать, хотите ли вы рисовать с помощью SVG или canvas и какую библиотеку вы будете использовать. Затем вам нужен интерполятор, функция, которая вычислит переход между двумя заданными фигурами, который может написать правильный путь в SVG или canvas. Я написал реализацию для SVG в D3.js, чтобы сделать некоторые анимированные переходы между множеством различных форм (используя суперлиформу Гиелиса ), если кому-то еще это нужно. Вы можете найти пример здесь