【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' });
相关推荐
斯普信专业组6 分钟前
从原理到实践:NFS复杂故障处理方法论
开发语言·nfs
dsl_17 分钟前
axios重复请求解决方案
前端·javascript·axios
拾荒旧痕11 分钟前
通过gird布局实现div的响应式分布排列
前端·javascript·css
蘑菇头爱平底锅15 分钟前
数字孪生-DTS-孪创城市-前端实现无人机飞行
前端·javascript·数据可视化
钢铁男儿28 分钟前
Python 文本和字节序列(处理文本文件)
开发语言·python
辣椒粉丝31 分钟前
简单了解V8垃圾回收机制
前端·javascript
zayyo33 分钟前
JavaScript的对象访问器
前端·javascript·面试
夜寒花碎34 分钟前
自定义迭代器和生成器
前端·javascript·面试
zyk_5201 小时前
前端渲染pdf文件解决方案
javascript·pdf·react
i_am_a_div_日积月累_1 小时前
前端路由缓存实现
前端·javascript·vue.js