javascript - .scrollIntoView 将页面稍微向左移动

标签 javascript html css

我安装了一个 .scrollIntoView 元素并指定了内容必须滚动到的位置,即 .但是,当我在网站上对其进行测试时,单击触发 scrollIntoView 函数的按钮后,该函数运行良好,它滚动到所需位置并显示包含它的所有内容,但是 WHOLE 页面略微向移动。

注意:在台式机上不是很明显,但在手机或平板电脑上很明显,左侧大约 10% 的内容从屏幕上切掉了)。

关于如何防止整个页面左移的任何想法?


.

  <div class="scrolltohere"></div>



<script>
function myFunction() {
  var elmnt = document.getElementsByClassName("scrolltohere");
  elmnt[0].scrollIntoView({behavior: "smooth", block: "start", inline: "start"}); 
}
</script>

最佳答案

我得到了答案,所以基本上问题是 inline 被设置为“开始”,删除它或将其更改为“最近”解决了页面向左移动的问题。

从此改变

  elmnt[0].scrollIntoView({behavior: "smooth", block: "start", inline: "start"}); 

为此

elmnt[0].scrollIntoView({behavior: "smooth", block: "start", inline: "nearest"});

关于javascript - .scrollIntoView 将页面稍微向左移动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59291262/

相关文章:

javascript - 确定对象属性是否为 ko.observable

javascript - 如何在主页后显示图像

html - 如何创建 2 个高度相同的 Bootstrap 行并且在调整大小时它们必须堆叠

javascript - 如何实现可重用的回调函数

javascript - Redux:Reducer 需要其他 Reducer 的状态?

html - Angularjs 到下一页的路由不起作用

html - 我试图隐藏滚动条

HTML 页面溢出,但无法滚动

html - CSS float 框意外的 Angular 凹凸

javascript - JS 中的词法作用域