【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' });
相关推荐
小陈同学呦17 小时前
前端如何处理订单状态导航的数据竞态问题
前端·javascript
开发者每周简报18 小时前
网海三部曲·无名宗师传
javascript·人工智能
isyangli_blog18 小时前
OpenDayLight (Carbon 版本) 启动与组件安装
开发语言·php
vb20081118 小时前
FastAPI APIRouter
开发语言·python
Benszen18 小时前
KVM虚拟化解决方案
开发语言·perl
会编程的土豆18 小时前
Go 语言反射(Reflection)详解
开发语言·后端·golang
東雪木18 小时前
多线程与并发编程 专属复习笔记
java·开发语言·笔记·java面试
杨充19 小时前
1.3 浮点型数据设计灵魂
开发语言·python·算法
噜噜噜阿鲁~19 小时前
python学习笔记 | 11.3、面向对象高级编程-多重继承
java·开发语言
basketball61619 小时前
Go 语言从入门到进阶:4. 数组和MAP使用方法总结
开发语言·后端·golang