Rah*_*rma 5 javascript jquery redirect browser-history
因此,我有一个场景,我正在使用函数生成所有 URL history.pushState。我没有为此使用任何服务器端技术。我只从服务器获取所有数据一次,然后使用Javascript.
现在我遇到的问题是使用popstate基本上模仿浏览器后退按钮行为的功能。
只需单击一次后退按钮即可一切正常。
$(window).on('popstate', function (event) {
location.reload(true);
//window.location.href = document.location;
//console.log("location: " + document.location);
});
Run Code Online (Sandbox Code Playgroud)
在一次后退按钮事件之后,我无法看到浏览器以前的任何历史记录。我假设这是因为location.reload方法而发生的。我也尝试存储我的所有位置,然后进行重定向,但同样的事情,浏览器历史记录在一次刷新后就会丢失。
有没有一种方法可以实现此目的,而浏览器不会丢失多次后退按钮单击的历史记录?
如果有一个JQuery选择,那么如果有人可以分享他们在这方面的知识,那就太好了。
嗯,这实际上是不可能的。我正在考虑的唯一技巧是更改事件触发的window.location.href时间popstate,并将您的历史记录作为 URL 参数传递。
$(window).on('popstate', function (event) {
window.location.href = 'https://here.com?history = ' + yourHistory;
});
Run Code Online (Sandbox Code Playgroud)
您需要弄清楚如何使用此方法发送历史记录,并在到达新页面时处理它,以便在用户再次单击后退按钮时能够再次发送它。您还必须确保生成的 URL 不会太长。
| 归档时间: |
|
| 查看次数: |
1523 次 |
| 最近记录: |