Code has been added to clipboard!

jQuery .scrollTop(): Set or Return the Vertical Position of Scrollbar

Reading time 1 min
Published Jan 23, 2018
Updated Oct 1, 2019

jQuery scrollTop: Main Tips

  • jQuery .scrollTop() returns the vertical position of the scrollbar for the first matched HTML element.
  • .scrollTop() jQuery method can also define the vertical position of the scrollbar for every specified element.
  • The vertical scroll position equals to the amount of pixels at the top that are hidden when a scrollbar is in a particular position.

Usage of .scrollTop()

The .scrollTop() method sets or returns the vertical scrollbar position of the selected elements. When elements are not scrollable or the scrollbar is at very top, it returns 0.

See an example of using .scrollTop()() jQuery method on a <div> element:

Example
$("button").click(() => {
    alert($("div").scrollTop());
});

The first type of jQuery .scrollTop()() syntax does not take any arguments. It simply returns the scrollbar position:

$(selector).scrollTop();

The second type sets the vertical scrollbar position for elements:

$(selector).scrollTop(scrollPosition);

Note: to make jQuery scroll to different places of the document, you can use .scrollTo().

Learn jQuery
Introduction
Selectors
Events
Event Methods
Download
Callback
Chaining
Get and Set
Add Element
Remove Element
Traverse
Parent
Children
Sibling Traverse
Filtering
jQuery AJAX
Effects
Show and Hide
Fade Effect
Slide Effect
Animate Effect
Manipulate CSS
Width and Height
.addClass()
.after()
.animate()
.append()
.appendTo()
.attr()
.before()
.bind() (deprecated)
.blur()
.change()
.click()
.clone()
.css()
.dblclick()
.delay()
.delegate() and .undelegate() (deprecated)
.detach()
.empty()
.end()
.error() (deprecated)
.fadeIn()
.fadeOut()
.fadeTo()
.fadeToggle()
.finish()
.focus()
.focusIn()
.focusOut()
.hasClass()
.height()
.hide()
.hover()
.html()
.innerHeight()
.innerWidth()
.insertAfter()
.insertBefore()
.keypress()
.keyup()
.live() and .die() (deprecated)
.load() (deprecated)
.mousedown()
.mouseenter()
.mouseleave()
.mousemove()
.mouseout()
.mouseover()
.mouseup()
.off()
.offset()
.offsetParent()
.on()
.one()
.outerHeight()
.outerWidth()
.position()
.prepend()
.prependTo()
.prop()
.proxy()
.queue()
.ready()
.remove()
.removeAttr()
.removeClass()
.removeProp()
.replaceAll()
.replaceWith()
.resize()
.scroll()
.scrollLeft()
.scrollTop()
.show()
.slideDown()
.slideToggle()
.slideUp()
.stop()
.submit()
.text()
.toggle()
.toggleClass()
.trigger()
.triggerHandler()
.unbind() (deprecated)
.unload() (deprecated)
.unwrap()
.val()
.width()
.wrap()
Event Properties
event.currentTarget
event.preventDefault()
event.relatedTarget
event.stopImmediatePropagation()
event.stopPropagation()
event.target
event.timeStamp
event.type
event.which
jQuery .find()
jQuery .keydown()
jQuery.noConflict()
pageY and pageX