单击“返回”时如何防止滚动效果

时间:2011-12-04 21:32:19

标签: html

请访问www.cnn.com。如果向下滚动,请单击底部附近的其中一个链接,然后在浏览器中单击“返回”,您将看到首先加载页面顶部。过了一会儿,浏览器“跳”回到你点击链接时的状态。在不同的浏览器中,它可能需要更短或更长时间,但它真的很烦人。除了在新窗口中打开链接之外,是否有任何已知(或未知)方法可以防止这种情况发生?

2 个答案:

答案 0 :(得分:1)

没有办法阻止这种情况,因为它是由客户端(Web浏览器)维护的。但是,在内容较少的页面上,“跳转”不会像需要更长时间才能重新进入内存的页面那样明显。

当然,您可以在新窗口中打开页面(正如您所提到的)或使用iframe,但这两个都是糟糕的工作。尽可能减少内容量(特别是图像和脚本)。请记住,由于所有大型网站都存在这个“问题”,因此用户将习惯使用它,因此,更有可能将其计算机或浏览器的速度归咎于您的网站。

您无论如何都不想将您的网站设计为需要使用后退按钮。

答案 1 :(得分:1)

这可能是你能得到的尽可能接近,但是会有一个明显的小闪光。另外,我只在Chrome中试过这个。在其他浏览器中可能会有不同的工作方式。

window.onload = function(){
    setTimeout(function(){
        document.body.scrollTop = 0;
    }, 1);
};

无论哪种方式,我都倾向于同意其他海报 - 这个功能在浏览器中存在是有原因的,并且用户期望它。