繁体   English   中英

找出用户在浏览器历史记录中的位置

[英]Find out where in browser history the user is

我知道我使用history对象访问浏览器历史history ,具体来说,我可以使用history.back(); history.forward(); history.go(item-number) (或history.go(url) )。 我想要确定用户当前在浏览器历史记录中的位置。

例如,Firefox可能支持从历史记录中访问个人网址,但这不是我所追求的,因为20个网址的历史记录可能包含重复的网址。

请注意,我对项目中的历史记录不感兴趣 - 而是对任何用户会话中的浏览器历史记录感兴趣。

例如,用户打开浏览器并浏览了20页 - 因此历史记录包含20个对象。 然后,用户打后退按钮4倍-并最终在20页(或者更确切地说,15日0..19页)的第16位。 有没有办法使用JavaScript获得当前的偏移量(16或15)? 如果是,那怎么样?

history.length

返回当前历史记录的长度。

遗憾的是, 没有办法弄清楚你在哪里。

不知道这是否有用,但使用HTML5,您可以向浏览器历史记录列表中的每个项目添加状态对象。 这为您提供了一种可能的方法来保存每个项目的索引(即,它在首次创建时的history.length值),然后您可以稍后检查它。

这是我发现对我有用的唯一解决方案。

有关详细信息,请参阅我的解决方案

暂无
暂无

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

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