On 28 March 2012 19:01, <[email protected]> wrote:
> The documentation states "Fx Method: set: The set method is fired on every
> step of a transition...".
>
> Is this really the case? What would be the real-life example?
>
> What I need is to fetch and print the current animation step, on every step.
>
> Ideas?
>
why not hack Fx.prototype.step?
something like:
Fx.prototype.step = function(now) {
var props;
if (this.options.frameSkip) {
var diff = (this.time != null) ? (now - this.time) : 0,
frames = diff / this.frameInterval;
this.time = now;
this.frame += frames;
} else {
this.frame++;
}
if (this.frame < this.frames) {
var delta = this.transition(this.frame / this.frames);
this.set(props = this.compute(this.from, this.to, delta));
} else {
this.frame = this.frames;
this.set(props = this.compute(this.from, this.to, 1));
this.stop();
}
this.fireEvent("step", [now, props]);
};
document.id("foo").set("tween", {
duration: 1000,
onStep: function(time, vals) {
console.log("timer", time, vals);
}
}).fade(0);
you cannot attach to .set because individual implementations of the Fx
class will override that anyway.
http://jsfiddle.net/dimitar/B5sPB/
i think that this will seriously delay/impact the actual animations in
older browsers.
--
Dimitar Christoff
"JavaScript is to JAVA what hamster is to ham"
http://fragged.org/ - @D_mitar - https://github.com/DimitarChristoff