假设我的历史中有一个任意点(有人登陆我的页面),我想推动一些状态,因为他们做了某些动作,然后当它们完成时我想去返回< / strong>到他们登陆页面时所处的历史点。因此,如果他们向前推进,他们会再次开始行动,如果他们按回去,他们会回到他们登陆我的页面之前的任何地方。
现在的问题是,当我按下状态然后在某一点上按下它们。 E.g。
现在,如果我想将它们返回到登录页面,我只需要返回一次(而不是两次)。如何使用javascript计算发回多远?似乎history.length非常不一致,并且使用history.js&#39;保存的状态不起作用,因为无论是否使用推送状态或是否点击返回状态,状态都会添加到该状态。
感谢任何帮助。
答案 0 :(得分:1)
如果您想转到特定网址,只需使用window.location.replace(url)
重定向到特定网址。
在您的情况下,在所有页面加载时,增加一个保存在会话变量中的计数器,以便在回发之间不会丢失并使用它window.history.go(-count)
返回。
进一步阅读 - http://www.aspnettutorials.com/tutorials/database/hit-cntr-asp4-cs/