Element: scrollIntoViewIfNeeded() 方法

非标准:此特性未标准化。我们不建议在生产环境中使用非标准特性,因为它们浏览器支持有限,并且可能会更改或被移除。但是,在没有标准选项的特定情况下,它们可以是合适的替代方案。

Element.scrollIntoViewIfNeeded() 方法会在元素不在浏览器窗口可见区域内时,将其滚动至可见区域。如果元素已经在浏览器窗口可见区域内,则不执行滚动。此方法是标准 Element.scrollIntoView() 方法的一个专有变体。

语法

js
scrollIntoViewIfNeeded()
scrollIntoViewIfNeeded(centerIfNeeded)

参数

centerIfNeeded 可选

一个可选的布尔值,默认为 true

  • 如果为 true,元素将居中对齐于可滚动祖先元素的可视区域。
  • 如果为 false,元素将对齐于可滚动祖先元素可视区域的最近边缘。根据可视区域的哪个边缘最靠近元素,元素的顶部将对齐于可视区域的顶部边缘,或者元素的底部边缘将对齐于可视区域的底部边缘。

返回值

无(undefined)。

示例

js
const element = document.getElementById("my-el");

element.scrollIntoViewIfNeeded(); // Centers the element in the visible area
element.scrollIntoViewIfNeeded(false); // Aligns the element to the nearest edge in the visible area

规范

不属于任何规范。这是一个专有的、特定于 WebKit 的方法。

浏览器兼容性

另见