【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' });
相关推荐
JavaLearnerZGQ几秒前
1、Java中的线程
java·开发语言·python
UIUV17 分钟前
模块化CSS学习笔记:从作用域问题到实战解决方案
前端·javascript·react.js
松涛和鸣18 分钟前
49、智能电源箱项目技术栈解析
服务器·c语言·开发语言·http·html·php
Kakarotto19 分钟前
使用ThreeJS绘制东方明珠塔模型
前端·javascript·vue.js
donecoding20 分钟前
TypeScript `satisfies` 的核心价值:两个例子讲清楚
前端·javascript
huwei85324 分钟前
Q打印表格内容类
开发语言·qt
Van_Moonlight24 分钟前
RN for OpenHarmony 实战 TodoList 项目:顶部导航栏
javascript·开源·harmonyos
技术狂小子25 分钟前
前端开发中那些看似微不足道却影响体验的细节
javascript
用户120391129472625 分钟前
使用 Tailwind CSS 构建现代登录页面:从 Vite 配置到 React 交互细节
前端·javascript·react.js
oioihoii33 分钟前
构建高并发AI服务网关:C++与gRPC的工程实践
开发语言·c++·人工智能