Javascript / CSS window.scrollTo(0,0)无效

时间:2013-01-31 09:58:06

标签: javascript css

我正在构建一个Web应用程序,当执行某个操作时,该Web应用程序的一部分需要滚动到顶部。这是使用window.scrollTo(0,0)处理的,这完全有效,直到我在下面添加一些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);
}

P.S。我不能在我的情况下使用jQuery,以防万一我建议我这样做。

5 个答案:

答案 0 :(得分:19)

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

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

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

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

答案 1 :(得分:7)

尝试替代方案:

document.body.scrollTop = 0;

答案 2 :(得分:7)

我的情况是删除此块修复了问题

html, body {
  overflow-x: hidden;
}

答案 3 :(得分:4)

原来在主体中的主元素上没有设置高度,这意味着滚动到没有工作但是过渡CSS在webkit中自动给出元素高度....修复CSS以给它设置一个高度它又有效了!

答案 4 :(得分:0)

更改

html, body {
  overflow-x: hidden;
}

body {
  overflow-x: hidden;
}

为我工作