我的目标:
the path http://i50.tinypic.com/dwwhhy.jpg
我考虑的是
我的计划
我的问题
答案 0 :(得分:14)
有一个很小的脚本(基于SVG),只适用于不是直线的动画,
叫pathAnimator(2kb),它非常小而且效率很高。
不需要jQuery。
var path = "M150 0 L75 200 L225 200 Z"; // an SVG path
pathAnimator = new PathAnimator( path ), // initiate a new pathAnimator object
speed = 6, // seconds that will take going through the whole path
reverse = false, // go back or forward along the path
startOffset = 0, // between 0% to 100%
easing = function(t){ t*(2-t) }; // optional easing function
pathAnimator.start( speed, step, reverse, startOffset, finish, easing);
function step( point, angle ){
// do something every "frame" with: point.x, point.y & angle
}
function finish(){
// do something when animation is done
}
(甚至可以使用fastdom)
提高效率答案 1 :(得分:9)
我建议您使用GSAP:http://www.greensock.com/get-started-js/
有了这个你可以处理时间轴,这是一个bezier插件:http://api.greensock.com/js/com/greensock/plugins/BezierPlugin.html
问候