I have html elements with id's assigned. Now I want to scroll to those elements. I see jQuery has a scrollTop which takes an integer value.. How do I easily just make a particular html element with an id scroll to the top? Ideally, with nice and smooth animation.
A quick search showed many scrolling plugins... if a plugin is needed for the above functionality, what's the most popular one? I'm also using jquery-ui.
You could use something like this to scroll to
#someElement
when the page loads:It simply animates the
scrollTop
property of thebody
element, and uses the top offset of some specific element as the position to scroll to. The animation lasts for 1000ms.Note: it selects both
html
andbody
so it works across browsers. I'm not sure on the specifics, but some quick tests show that Chrome usesbody
, but Firefox and IE usehtml
.Here's a working example.
Consider the following snippet:
It scrolling was binded to #myDiv element on click just for example. Code determines a position of #myDiv element, than calculates number of scroll steps (speed/smoothness). Than does jQuery .scrollTop() thing.