所以当用户提交表单时,我试图滚动到屏幕顶部,但堆栈溢出的答案似乎对我不起作用。
下面是我代码:
handleClick (evt) {
evt.preventDefault();
this.calculateScore();
this.setState({submittingQuiz: true});
// let myPage = document.querySelector('body');
// myPage.scrollTo(0,0); Couldn't get this way to work either
window.scrollTo({top: 0, behavior: 'smooth'})
}
有没有关于如何解决这个问题的想法。我有一些造型,我想可能会弄乱它。
html {
background-image: url('./tupac.jpeg');
background-position-y: -580px;
background-repeat: no-repeat;
background-size: cover;
overflow: hidden;
}
Anyone got a clue?
2条答案
按热度按时间hgqdbh6s1#
这可能是因为
body
具有height: 100vh;
,或者应用程序的某个主容器具有相同的height: 100vh;
尝试删除
body
上的height: 100vh;
和应用程序的主容器,然后再次测试。oewdyzsn2#
我也遇到过这个问题,正如标记的解决方案所提到的,删除
height: 100vh
为我解决了这个问题。然而,没有height: 100vh
,我的网站无法正常运行(即使有足够的边距/填充,元素也会到达页面的最底部)。如果您需要
height: 100vh
,那么我建议使用element.scrollIntoView()
,而不是window.scrollTo()
,其中的元素是网站顶部或附近的某个元素。