元素:scrollIntoViewIfNeeded() 方法
非标准:此功能是非标准的,并且不在标准化轨道上。不要在面向 Web 的生产网站上使用它:它不会对所有用户起作用。实现之间也可能存在很大的不兼容性,并且行为在将来可能会发生变化。
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 特定方法。
浏览器兼容性
BCD 表仅在启用 JavaScript 的浏览器中加载。
另请参阅
- W3C CSSOM 错误 17152:在滚动到视图时支持将元素居中。 (对
scrollIntoViewIfNeeded
的标准化等效项的功能请求)