Sometime ago, someone asked about smoothscroll support in dojo. While working on index list of Editor2, I found myself in the position of requiring such a mechanism, so that rather than jumping to an element, scrolling smoothly to the element gives user a better feeling of context.
Rather than implementing a widget directly, as asked for in the linked post, a dojo.lfx animation shall be created first. Although the core of the smoothScroll is simple to figure out, I had little knowledge about the dojo.lfx code base. After inspecting dojo.lfx.html.propertyAnimation and resource dojo.lfx.Animation, I got the idea of what the animation framework dojo.lfx provides.
After implemented with the help of the great dojo.lfx infrustrature, the code for the smoothScroll turns out to be not complex at all. However, with this tiny code, both horizental and vertical smooth scrolling is supported. In addition, scrolling to nodes in iframes are well implemented.
Checkout the scoll test page for how to use it. In the test page, it also demostrates how to chain animation together to obtain some cool eye candies, check it out.
Along with this new dojo.lfx resource, other improvements include:
dojo.html.getAbsolutePositionis extended to be compatible withdojo.withGlobal- a new function,
dojo.html.getAbsolutePositionExtis introduced in resourcedojo.html.utilto include support for getting abosolute postion of a node in iframes with regards to a given window. The reason why this is not merged intodojo.html.getAbsolutePositionis that, this new feature depends on APIs defined indojo.html.util. In order to avoid introducing it as a dependency indojo.html.layout, this design decision is made.

Alas, the "scroll test page"
Thank you for documenting
try now the nightly is
Hey Cougar, Should the
hehe, I just made use of an
Hmmm... I can't get it to
it does work for me in opera
It does not work on Safari,
It does not work on Safari, see: http://dojotoolkit.org/node/713