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
alignToTop
Optional-
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
scrollIntoViewOptions
Optional Experimental-
An Object with the following properties:
behavior
Optional-
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
block
Optional-
Defines vertical alignment. One of
start
,center
,end
, ornearest
. Defaults tostart
. inline
Optional-
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