是否有用于保留 dom 状态的通用解决方案,以便当用户通过使用后退/前进返回页面时,整个页面处于他们离开它的确切状态?
这篇文章询问并回答了为什么该行为与不同的浏览器和不同的 javascript 库不一致...
...但我很好奇是否有人对这个问题有一个不需要重新加载页面的通用解决方案。
是否有用于保留 dom 状态的通用解决方案,以便当用户通过使用后退/前进返回页面时,整个页面处于他们离开它的确切状态?
这篇文章询问并回答了为什么该行为与不同的浏览器和不同的 javascript 库不一致...
...但我很好奇是否有人对这个问题有一个不需要重新加载页面的通用解决方案。
恐怕没有,而且真的不可能,因为我们谈论的是完全自行决定的浏览器行为,而不是标准定义的。您可以使用 Ajax 积极地将相关 DOM 状态同步到服务器上的会话,并始终在页面加载时从该状态恢复,但这将保留该页面的最新状态,而不是在给定的期望中必然存在的状态浏览器历史记录中的点。
您可以在 rails 中使用这种缓存破坏技术,使其在现代浏览器(chrome、ie8+、ff 3.5+)中工作。当我们让 ajax 更新 dom 并且必须导航回来并让 ajax 更新持续存在时,这对我的上一个项目很有用。
response.headers["Cache-Control"] = "no-cache, no-store, max-age=0, must-revalidate"
response.headers["Pragma"] = "no-cache"
response.headers["Expires"] = "Fri, 01 Jan 1990 00:00:00 GMT"