首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

scrollIntoView()方法导致整个页面产生偏移

问题描述 今天在做页面UI改版的时候发现,我之前使用的是dom.scrollIntoView(); 使得点击右侧题目编号的时候,让左侧题目滚动到页面可视区域。...如果不知道 scrollIntoView 如果使用,我有篇文章专门写了 scrollIntoView 的简单使用:scrollIntoView() 让元素进入可视区域 · Issue #167 但是现在有个问题就是...问题分析 这个时候唯一的可能就是scrollIntoView()函数引起的问题。 我之前怀疑是不是该函数给整个页面加了transform 属性导致整个页面往上偏移,通过查看css,发现没有。...最高赞给出的解决方法是:放弃使用scrollIntoView 改用scrollTop 来操作滚动条。...scrollintoview-whole-page-shifting-down (完)

3.9K40

详细介绍scrollIntoView()方法属性

因为工作中用到了锚点设置,常用的总是出问题,后来扒拉出了这个属性,详细研究了下方便日后使用 介绍scrollIntoView()的详细属性 简介 该scrollIntoView()方法将调用它的元素滚动到浏览器窗口的可见区域...语法 element.scrollIntoView(); // 等同于element.scrollIntoView(true) element.scrollIntoView(alignToTop); /.../布尔参数 element.scrollIntoView(scrollIntoViewOptions); //对象参数 语法参数 alignToTop [可选],目前之前这个参数得到了良好的支持 true...示例 var element = document.getElementById("box"); element.scrollIntoView(); element.scrollIntoView(false...); element.scrollIntoView({block: "end"}); element.scrollIntoView({behavior: "instant", block: "end",

1.1K20

Scroll,你玩明白了嘛?

再看一眼代码,发现使用的是 scrollIntoView: 因为是第一次遇到,所以上万能的 stack overflow 上逛了一圈,看到了类似的问题:scrollIntoView 导致页面整体移动 ...这显然和 MDN 上的描述不一致: Element 接口的 scrollIntoView () 方法会滚动元素的父容器,使被调用 scrollIntoView () 的元素对用户可见。...2、直接使用 scrollIntoView() 的默认参数 先说说 scrollIntoView() 支持什么参数: element.scrollIntoView(alignToTop); // Boolean...回到我们的问题,为什么使用默认参数,即 element.scrollIntoView(),会引发页面偏移的问题呢?...由于寻觅不到 scrollIntoView 的源码,暂时只能定位到是 start 这个默认值在做妖。既然原生的方法有问题,我们需要采取一些别的方式来代替。

3K21

JS滑动滚动的n种方式

滑动滚动的n种方式 # 阅读本文,你将: 了解原生JS实现页面滚动的多种方式 了解这多种方式可以对应上的效果以及推荐的应用场景 多个滑动方面的坑以及相应(如果有)的解决方案 获得一些有用的函数 实现汇总 1 scrollIntoView...1.1 基本用法 let element = document.getElementById("scrollView"); element.scrollIntoView(); element.scrollIntoView...(false); element.scrollIntoView({block: "end"}); scrollIntoView对页面元素调用,会滚动元素的父容器,将该元素滚动到浏览器的可视区域 这是对...1.3 浏览器的支持度 1.4 示例与推荐使用场景 原始位置图 我们定位如图红框的元素,从顶部开始示例 1.4.1 scrollIntoVIew() 页面滑动至父级容器,但是子项并没有被滑动到可视区域...1.4.2 scrollIntoView(false) 页面滑动到底部,该元素从下方进入可视区域 1.4.3 scrollIntoView({block:"center",inline:"center

6K10
领券