javascript - 保留页面状态以使用浏览器后退按钮重新访问

标签 javascript jquery ajax playframework browser-history

我有一个基于用户按下按钮动态加载内容的页面:

${document).ready(function)
{
    $("#myButton").click(function()
    {
        $("#dynamicDiv").load("www.example.com");
    });
}

动态内容工作正常,我可以整天获取页面。但是当你点击一个链接到另一个页面后,然后按下浏览器的后退按钮返回到该页面,该页面将完全重置,就好像从未加载过任何动态内容一样。

我发誓我以前见过不同的行为,但也许我疯了。浏览器不应该保留页面的状态,而不是重新呈现它吗?

编辑: 顺便说一下,我正在使用 Play!框架,如果这与此有任何关系的话。

最佳答案

浏览器加载页面,因为它是第一次收到。不会保留通过 javascript 完成的任何 DOM 修改。

如果你想保留修改,你将不得不做一些额外的工作。修改 DOM 后,使用您稍后可以解析并重新创建修改的标识符更新 url 哈希。每当加载页面时,您都需要检查是否存在哈希并根据标识符进行 DOM 修改。

例如,如果您要动态显示用户信息。每次显示一个时,您都会将 url 哈希更改为如下所示:“#/user/john”。每当页面加载时,您都需要检查哈希是否存在 (window.location.hash),解析它并加载用户信息。

关于javascript - 保留页面状态以使用浏览器后退按钮重新访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9009858/

相关文章:

javascript - 使用 jquery 或 CSS3 的球滚动动画

javascript - 使用 Jquery 垂直选择

javascript - Quasar 2.2.2、Vue 3 和 Firebase : how to access GlobalProperties from router

javascript - 使用 switch case 的 Google 表单通知脚本

javascript - 带有样式溢出的嵌套 div 的 jQuery 可拖动 div :auto

javascript - 如何为 Kendo 中的组合框设置输入(而不是下拉)中显示的文本的字体大小?

javascript - 使用ajax在后台上传照片

jquery对xml文档解析错误

javascript - 添加支持异步重新加载的Web层

javascript - JavaScript 中未终止的字符串文字