document.body.scrollTop Firefox returns 0 : ONLY JS

cross-browser, firefox, javascript

Solution

Try using this: `document.documentElement.scrollTop`. If I am correct `document.body.scrollTop` is deprecated.

Update

Seems like Chrome does not play along with the answer, to be safe use as suggested by @Nikolai Mavrenkov in the comments:

`window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0`

Now all browsers should be covered.

Problem

Any alternatives in pure javascript? The following works in opera, chrome and safari. Have not tested yet on explorer: http://monkey-me.herokuapp.com https://github.com/coolcatDev/monkey-me-heroku/blob/master/static/js/myscripts.js At page load should scroll down to div '.content': ``` var destiny = document.getElementsByClassName('content'); var destinyY = destiny[0].offsetTop; scrollTo(document.body, destinyY, 200); function scrollTo(element, to, duration) { if (duration <= 0) return; var difference = to - element.scrollTop; var perTick = difference / duration * 2; setTimeout(function() { element.scrollTop = element.scrollTop + perTick; scrollTo(element, to, duration - 2); }, 10); }; ```

Original source