The Element interface's scrollIntoView() method scrolls the element's ancestor containers such that the element on which scrollIntoView() is called is visible to the user.
On this page
Element: scrollIntoView() method
Syntax
js
scrollIntoView()
scrollIntoView(alignToTop)
scrollIntoView(scrollIntoViewOptions)
Parameters
alignToTopOptional-
A boolean value:
- If
true, the top of the element will be aligned to the top of the visible area of the scrollable ancestor. Corresponds toscrollIntoViewOptions: {block: "start", inline: "nearest"}. This is the default value. - If
false, the bottom of the element will be aligned to the bottom of the visible area of the scrollable ancestor. Corresponds toscrollIntoViewOptions: {block: "end", inline: "nearest"}.
- If
scrollIntoViewOptionsOptional Experimental-
An Object with the following properties:
behaviorOptional-
Determines whether scrolling is instant or animates smoothly. This option is a string which must take one of the following values:
smooth: scrolling should animate smoothlyinstant: scrolling should happen instantly in a single jumpauto: scroll behavior is determined by the computed value ofscroll-behavior
blockOptional-
Defines vertical alignment. One of
start,center,end, ornearest. Defaults tostart. inlineOptional-
Defines horizontal alignment. One of
start,center,end, ornearest. Defaults tonearest.
Return value
None (undefined).
Examples
js
const element = document.getElementById("box");
element.scrollIntoView();
element.scrollIntoView(false);
element.scrollIntoView({ block: "end" });
element.scrollIntoView({ behavior: "smooth", block: "end", inline: "nearest" });
Notes
The element may not be scrolled completely to the top or bottom depending on the layout of other elements.
Specifications
| Specification |
|---|
| CSSOM View Module # dom-element-scrollintoview |
Browser compatibility
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
scrollIntoView |
1 | 79
17–79The only parameter supported isalignToTop.
12–17["Only supported forHTMLElement, not all Element objects, such as SVGElement.", "No support for smooth behavior."]
|
1 |
5["Only supported forHTMLElement, not all Element objects, such as SVGElement.", "No support for smooth behavior or center options."]
|
≤12.1 |
3["No support forcenter option.", "Before Safari 15.4, there was no support for the smooth behavior."]
|
4.4 | 18 | 4 | ≤12.1 |
1["No support forcenter option.", "Before iOS 15.4, there was no support for the smooth behavior."]
|
1.0 |
options_parameter |
61Theblock and inline options support the values start, center, end, nearest.
|
79Theblock and inline options support the values start, center, end, nearest.
|
36["No support forinline option.", "Before Firefox 58, nearest and center values for the block option was unsupported. See bug 1389274."]
|
No |
48Theblock and inline options support the values start, center, end, nearest.
|
14 |
61Theblock and inline options support the values start, center, end, nearest.
|
61Theblock and inline options support the values start, center, end, nearest.
|
36["No support forinline option.", "Before Firefox 58, nearest and center values for the block option was unsupported. See bug 1389274."]
|
45Theblock and inline options support the values start, center, end, nearest.
|
14 |
8.0Theblock and inline options support the values start, center, end, nearest.
|
See also
Element.scrollIntoViewIfNeeded()Non-standard
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollIntoView