For strange reason, jQuery always return zero for scrollTop() function. Have trouble scrolling to that element.
var target = jQuery('#element'); target.scrollTop(); //this always return zero!
1 Answers
Best Answer
There are workarounds:
1 – use the base javascript method (see below)
2 – use scrollBy instead of scrollTo
//here is workaround var screenTop = (window.pageYOffset || doc.scrollTop) - (doc.clientTop || 0); var target = jQuery('#element'); targetTop = target[0].getBoundingClientRect().top var totalTop = screenTop + targetTop; // this replaces scroll top //if you are scrolling to a target element, can use scrollBy instead var target = jQuery('#element'); window.scrollTo(0, target.scrollTop()); window.scrollBy(0, target[0].getBoundingClientRect().top); //easier than the above