Login Register

Chain Animation onEnd Event Firing

Hi All,

I have noticed the following behaviour when using the dojo.fx.chain animation and connecting to its onEnd event.

What I would like to do is have a couple of animations run one after the other, then when all have finished, call another function, below is my contrived example;

var anim1 = dojo.fx.wipeOut({node:'ele'});
var anim2 = dojo.fx.wipeIn({node:'ele'});
var c = dojo.fx.chain([anim1,anim2]);

dojo.connect(c,"onEnd",someFunc);

c.play();

So this code should in theory call 'someFunc' after the last animation has run, however what actually happens is 'myFunc' gets called after the anim1 has finished. Looking at the source I can see what happens, the anims get connected to each other then the first Animation is returned. This is all well and good but I was expecting to get back an Animation with its own events so the above code would work as I expected.

Its not a big problem as I can connect onto the anim2 onEnd to get what I want, I just wanted to hightlight that the returned animation is actually the first animation passed in, not a new one.

Dojo 1.0.1

see these tickets