Negative start times don't seem to be respected in any of the Timeline flavors.
Negative start times would be extremely useful for nested Timelines that are supposed to conclude at a given time. Following the pattern of objects that return Timelines describing their animation, one would have to measure the duration of the returned Timeline to get this behavior.
SomeObject.prototype.getAnimation = function() {
var anim = new TimelineLite();
anim.to( this, 10, { foo: bar }, 0 );
return anim;
};
var animation = someObject.getAnimation();
mainTimeline.add( animation, 5 - animation.endTime() ); // where 5 is "arrival" time
What would be much nicer is for that "10" to be contained within the animation itself.
SomeObject.prototype.getAnimation = function() {
return new TimelineLite().to( this, 10, { foo: bar }, -10 );
};
mainTimeline.add( someObject.getAnimation(), 5 );
Also speaks to the idea of GSAP tweening methods accepting an 'end time' parameter as opposed to duration. Curious to know if there is already a method in place to get this behavior.