一尘不染

前进和后退按钮以控制ajax加载

ajax

你好,

我正在寻找解决方案,其中后退和前进按钮控制我的Ajax调用历史记录。

因此,如果我要进行ajax调用,然后按“返回”,我想重新加载原始页面。

如果我先执行ajax调用,然后再执行另一个,然后按“后退”按钮,我想再次执行第一个ajax调用。

依此类推…(即,如果我现在按前进按钮,则重做第二个ajax coll shell ;-))

谢谢

更新

好吧,我使用名为jQuery
Address
的非常漂亮的jquery插件解决了整个问题,并且效果很好。

事实是,我有麻烦要在原始站点上获得贝克。我导航到,mysite.foo/step1然后触发ajax调用,然后我登陆maysite.foo/step1#/#step2,当我现在按下“后退”按钮时,我停留在该网站上(其内容为步骤2),并且我无法获取有关我的原始目标网页的信息,因此无法重新加载…

修正:我有一个数组,在其中存储由step2索引的ajax调用。

step1 : {id: 1, url: /ste1.php, ... },
step2 : {id: 2, url: /step2.php, ... },...

还有一个设置哈希值的函数调用ajax请求。


阅读 166

收藏
2020-07-26

共1个答案

一尘不染

您应该将ajax“状态”保存在文档位置哈希中(即http:// page-url#ajax-state)。

如果仅修改哈希组件,浏览器将不会重新加载页面,但浏览器历史记录将记录URL的更改。因此,当您按返回时,您将能够基于存储在文档哈希中的信息来重播ajax调用。

2020-07-26