Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/462.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 window.pushState不增加历史记录长度_Javascript_Html5 History - Fatal编程技术网

Javascript window.pushState不增加历史记录长度

Javascript window.pushState不增加历史记录长度,javascript,html5-history,Javascript,Html5 History,我有以下代码试图操纵窗口。历史记录堆栈: console.log("before:" + window.history.length); window.history.pushState(null, null, '/page1'); console.log("after:" + window.history.length); 即使我正在添加一个状态,在之前的和之后的中也会打印相同的内容: before:50 after:50 为什么pushState不增加历史长度?顺便说一句,尽

我有以下代码试图操纵
窗口。历史记录
堆栈:

  console.log("before:" + window.history.length);
  window.history.pushState(null, null, '/page1');
  console.log("after:" + window.history.length);
即使我正在添加一个状态,在
之前的
之后的
中也会打印相同的内容:

before:50
after:50

为什么
pushState
不增加历史长度?顺便说一句,尽管我正在刷新页面,但长度始终为
50

对我来说应该是这样的:谢谢,我使用的是角度,可能是角度问题。这可能因用户代理而异。有些对历史中的元素数量有限制。From:“用户代理可以限制每页添加到会话历史记录中的状态对象的数量。”Firefox的可能副本(可能是其他浏览器)会限制
历史记录的最大值。长度
。在Firefox中默认为50。当长度为50时,执行
.pushState()
的语义是什么?这是一个很难找到的主题,但据我所知,它有效地将条目从列表底部“推”出去,因此仍然有50个条目,但“后退”按钮做了您期望的事情。