Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/397.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 找出用户在浏览器历史记录中的位置_Javascript_Browser History - Fatal编程技术网

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

Javascript 找出用户在浏览器历史记录中的位置,javascript,browser-history,Javascript,Browser History,我知道我使用history对象访问浏览器历史记录,具体来说,我可以使用history.back(),history.forward()和历史记录.go(项目编号)(或历史记录.go(url))。我试图确定用户当前在浏览器历史记录中的位置 例如,Firefox可能支持从历史记录中访问单个url,但这不是我想要的,因为20个url的历史记录可能包含重复的url 请注意,我对项目中的历史记录不感兴趣,而是对任何用户会话中的浏览器历史记录感兴趣 例如,用户打开浏览器浏览了20页,因此历史记录包含20个对

我知道我使用
history
对象访问浏览器历史记录,具体来说,我可以使用
history.back()
history.forward()
历史记录.go(项目编号)
(或
历史记录.go(url)
)。我试图确定用户当前在浏览器历史记录中的位置

例如,Firefox可能支持从历史记录中访问单个url,但这不是我想要的,因为20个url的历史记录可能包含重复的url

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

例如,用户打开浏览器浏览了20页,因此历史记录包含20个对象。然后用户按了4次“后退”按钮,结果是20页中的第16页(或者更确切地说是0..19页中的第15页)。有没有办法使用JavaScript获取当前偏移量(16或15)?如果是的话,怎么办

history.length
返回当前历史记录的长度


遗憾的是,没有任何方法可以确定您在其中的位置。

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

这是我发现的唯一适合我的解决方案


有关详细信息,请参阅。

出于兴趣,您想将此信息用于何处?@epascarello谢谢,我知道。但它并没有回答我的问题。它回答的问题是,文档中没有提供这些数据。:)评论不是答案。他们要求和/或提供更多信息。这仅适用于使用pushstate的单页应用程序。这不是OP想要的:“请注意,我对项目中的历史记录不感兴趣,而是对任何用户会话中的浏览器历史记录感兴趣。”