繁体   English   中英

Javascript-单击后退按钮时,将页面滚动到上一页的最后位置

[英]Javascript - Scroll page to last position of previous page when the back button is hit

我决定制作自己的“无休止”滚动页面,该页面完全适合我的需求,而不是让一些无法完全按照我希望的方式工作的广泛类适应。

现在,当所有事物都像魅力一样运转时,最后一件事仍然存在。 按下浏览器的后退按钮时,保留滚动位置。 每次您到达页面底部时,我都会更改网址的井号#部分。 当单击后退按钮时,它将显示等待图标,然后加载动态内容。

Firefox在此之后完全滚动以滚动页面(良好)。

Opera和Safari似乎加载了与以前完全相同的状态,因此动态内容似乎已经被预取并显示了(很好)。

但是IE和Chrome希望在加载动态内容之前进行滚动,因此以后不会再尝试。 IE停留在页面顶部,Chrome停留在中间位置(动态内容显示之前页面的底部)。

现在,我该怎么做才能解决这个问题? 理论上,当检测到任何单击时,我可以将当​​前滚动位置存储到url哈希。 然后上一页已加载,我可以简单地解析哈希值和ScrollTop()。 但是由于某种原因

$(document).live("click", function() { window.alert("gotcha"); });

反正对我不起作用。

document没有任何要单击的内容。 document.documentElement是根<html>节点,因此将事件附加到该节点,或者将事件附加到window如果适用)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM