【javascript】关于js控制滚动的一些注意事项

滚动方式有2种

1、element.scrollIntoView

javascript 复制代码
// 假设你有一个元素的ID是'element-id'
const element = document.getElementById('element-id');
// 滚动到该元素
element.scrollIntoView();
// 如果你想要平滑滚动,可以传递一个选项对象
element.scrollIntoView({ behavior: 'smooth' });

PS:这种方式有2种已知情况下会不生效

  • scrollIntoView()的元素的父容器必须设置滚动,例如:overflow-y: auto;,请注意,这里说的是父容器,是不包含祖先容器的!!!
  • scrollIntoView()requestAnimationFrame()目前不能同时存在

2、element.scrollTo

javascript 复制代码
// 假设你有一个元素的ID是'element-id'
const element = document.getElementById('element-id');
// 滚动到该元素
element.scrollTo(0, 100); // x,y坐标
// 如果你想要平滑滚动,可以传递一个选项对象
element.scrollTo({ top: offsetTop, behavior: 'smooth' });
相关推荐
散峰而望5 分钟前
C++入门(一)(算法竞赛)
c语言·开发语言·c++·编辑器·github
C_Liu_11 分钟前
13.C++:继承
开发语言·c++
张人玉13 分钟前
c#串口读写威盟士五插针
开发语言·c#·通讯
路长冬21 分钟前
matlab与数字信号处理的不定期更新
开发语言·matlab·信号处理
冴羽30 分钟前
今日苹果 App Store 前端源码泄露,赶紧 fork 一份看看
前端·javascript·typescript
蒜香拿铁32 分钟前
Angular【router路由】
前端·javascript·angular.js
卡卡酷卡BUG37 分钟前
Java 后端面试干货:四大核心模块高频考点深度解析
java·开发语言·面试
Yolo566Q40 分钟前
OpenLCA生命周期评估模型构建与分析
java·开发语言·人工智能
安娜的信息安全说1 小时前
深入浅出 MQTT:轻量级消息协议在物联网中的应用与实践
开发语言·物联网·mqtt
西洼工作室1 小时前
高效管理搜索历史:Vue持久化实践
前端·javascript·vue.js