Javascript:scrollTo()vs scroll(),这是可接受的/标准方法

问题描述:

我知道scroll()scrollTo()都做同样的事情,并且浏览器同时支持以确保向后兼容性,但哪一个已被弃用?我应该使用哪一个?有没有办法阻止浏览器在页面上存储滚动位置,以便在用户离开页面之前,我不必使用事件侦听器将滚动位置重置为(0,0)?我总是喜欢每次使用滚动位置(0,0)渲染我的页面,因为它更像是一个交互式游戏而不是网站,并且需要此功能。Javascript:scrollTo()vs scroll(),这是可接受的/标准方法

W3Schools似乎只参考scrollTo(),所以这可能是标准。尽管如此,"beforeunload"事件侦听器的解决方法将会很好,所以我的页面总是从滚动位置(0,0)开始,而不需要额外的侦听器。

的W3实际上列出了他们的窗口界面的规格两种方法: http://www.w3.org/TR/cssom-view/#extensions-to-the-window-interface

您可以放心地使用其中之一。

+1

这是有点令人困惑,但我想它的工作原理。 – Frank 2015-02-09 18:22:43

+0

的确,在任何标准出现之前,所有事物都是如此进化的。不幸的是,我不认为有一种方法可以解决重置滚动位置的问题,因为我相信浏览器本身可以处理这种情况。只要页面加载,您也可以尝试强制滚动到(0,0)。 – skyline3000 2015-02-09 18:41:47

+0

有没有办法强制滚动?现在使用“beforeunload”工作,但显式调用'window.scrollTo(0,0)'似乎不工作。 – Frank 2015-02-09 18:43:36