我安装了一个 .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/