回到上一页,不使用jquery而不是angularjs刷新

我在本地运行脚本,在其中一个函数中,它转到不同的页面。 一旦它这样做,我希望它返回上一页并继续在本地运行脚本。

有没有办法在不刷新页面的情况下返回上一页。 我用了parent.history.back(); 这可以追溯到上一页,但刷新页面,以便我的脚本停止运行。

有没有办法在不刷新页面的情况下返回上一页?

TL; DR – 简短的回答是“不”
没有“刷新”页面就无法返回。

“刷新”是一个有点模糊的术语,没有确切的技术含义……

无论是浏览器的后退按钮还是.history.back()告诉浏览器加载它在历史记录中保存的上一页,无论以任何方式“返回”。

是从浏览器缓存加载页面还是从服务器重新请求页面取决于浏览器,而不是由您决定。

在任何情况下,再次由浏览器决定是否重新解析DOM和/或重新呈现页面。 实际上,它将会发生这种情况。

其中任何一个都可以称为“刷新”。

然而,那时,浏览器将开始解析并执行任何存在的脚本。 在任何情况下页面卸载时,它不会在脚本中的任何位置继续

浏览器返回的页面是从服务器收到的HTML文本,但是在加载页面后脚本可能会显着修改DOM。 这些脚本需要从头开始重新运行,然后重新加载页面。

可以想象,当你离开页面时编写一个保存DOM状态和js执行状态的浏览器,并在你返回时恢复该状态,但是不存在这样的浏览器。


根据您的实际目标,可以执行许多操作,例如pushState()replaceState() ,单页Web应用程序, XMLHttpRequest ,使用等,您可以在其中替换当前页面内容(DOM)与其他内容实际上没有“前进”,并在您“返回”页面后恢复保存的DOM,
但对于Stackoverflow问题来说,这个问题太大了。

我不是100%跟随你的问题,但从我的笔记中我可以提供给你:

 // To some url window.location.href = 'some/new/url'; // To some url without it effecting browser back history: window.location.replace('some/new/url');