W3cubDocs

/Web APIs

Element: scrollBy() method

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨January 2020⁩.

The scrollBy() method of the Element interface scrolls an element by the given amount.

Syntax

scrollBy(xCoord, yCoord)
scrollBy(options)

Parameters

xCoord

The horizontal pixel value that you want to scroll by.

yCoord

The vertical pixel value that you want to scroll by.

options

An object containing the following properties:

top

Specifies the number of pixels along the Y axis to scroll the window or element.

left

Specifies the number of pixels along the X axis to scroll the window or element.

behavior

Specifies whether the scrolling should animate smoothly (smooth), happen instantly in a single jump (instant), or let the browser choose (auto, default).

Return value

None (undefined).

Examples

// scroll an element
element.scrollBy(300, 300);

Using options:

element.scrollBy({
  top: 100,
  left: 100,
  behavior: "smooth",
});

Specifications

Browser compatibility

Desktop Mobile
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet WebView Android WebView on iOS
scrollBy 61 79 36 48 10.1 61 36 45 10.3 8.0 61 10.3
options_behavior_parameter 61 79 36 48 14 61 36 45 14 8.0 61 14
options_left_parameter 61 79 36 48 10.1 61 36 45 10.3 8.0 61 10.3
options_top_parameter 61 79 36 48 10.1 61 36 45 10.3 8.0 61 10.3

© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollBy