Ich wollte gerade nur etwas kleines ausprobieren und doch schein ich mich im Kreis zu drehen.
Ich hab zwar keine Ahnung was du damit meinst, aber möglicherweise scheiterst du an der "dist"-Verzweigung, weil die Animation noch läuft und sie unterdessen wieder ausgeführt wird.
ggf. hilft es, die Animation auf jedenfall vorher anzuhalten, das geht mit stop() (den optionalen Parameter beachten) vor dem animate() in der chain.