9

我正在构建一个 Web 应用程序,当执行某个操作时,该 Web 应用程序的一部分需要滚动到顶部。这是使用window.scrollTo(0,0)which 完美处理的,直到我在下面添加一些 CSS 样式(我需要这个项目)。

有人知道为什么下面的 CSS 会停止window.scrollTo(0,0)工作吗?

* {
    -webkit-transform: translate3d(0,0,0);
    -moz-transform: translate3d(0,0,0);
    -ms-transform: translate3d(0,0,0);
    -o-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
}

PS 我不能在我的情况下使用 jQuery,以防万一有人建议我这样做。

4

5 回答 5

32

我有同样的问题,这解决了它:

document.getElementById('ELEMENT_ID').scrollIntoView();

ELEMENT_ID您要滚动到视图中的对象的 id 在哪里,在您的情况下,它通常是标题。

请注意,这仅适用于 Firefox 浏览器,因为其他浏览器尚未实现平滑滚动选项(请参阅更多:http ://caniuse.com/#feat=scrollintoview )。

于 2014-06-12T18:42:33.020 回答
12

尝试替代方案:

document.body.scrollTop = 0;
于 2013-01-31T10:20:37.073 回答
9

我的情况是删除这个块解决了这个问题

html, body {
  overflow-x: hidden;
}
于 2015-01-07T16:21:10.837 回答
4

原来在正文的主要元素上没有设置高度,这意味着滚动到不起作用但是过渡 CSS 在 webkit 中自动给元素高度.... 修复了 CSS 给它一个设置高度并且它可以工作再次!

于 2013-01-31T12:42:04.197 回答
0

改变

html, body {
  overflow-x: hidden;
}

body {
  overflow-x: hidden;
}

为我工作

于 2020-05-20T05:16:00.727 回答