我正在使用Angular.js 1.3,使用ui-router.我有3页,page1.html,page2.html,page3.html.
当用户点击page1时,page2将打开,但我想保存第1页的滚动状态,用户在点击之前,所以在点击后退按钮后,他将处于相同的滚动状态.
为了解决这个问题,我在page1.html上打开了page2.html,在iframe中,并给它绝对位置显示在page1.html上,我使用的是:
history.pushState({}, '', '/page2.html');
改变网址.这个实现工作正常.
现在,当用户点击page2.html上的链接时,它应该打开page3.html,就像我使用的普通链接一样:
$state.go("page3")
问题是现在状态变化,并且page3.html加载,但url仍然是/page2.html,url没有变化.
我甚至尝试过:
history.pushState({}, '', '/page3.html');
仍然网址没有变化.任何人都知道它为什么会发生.